| 1800 |  How can I highlight somehow the child bars of a summary bar 
		
			

 
Dim hSummary as N
Dim hTask as N
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Columns.Add("Task")
var_Chart = oG2antt.Chart
	' var_Chart.PaneWidth(.f.) = 128
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 128"
	var_Chart.FirstVisibleDate = {01/01/2001}
	var_Chart.Bars.Item("Task").Color = 15790320
var_Items = oG2antt.Items
	hSummary = var_Items.AddItem("Summary")
	var_Items.AddBar(hSummary,"Project Summary",{01/02/2001},{01/02/2001},"")
	hTask = var_Items.InsertItem(hSummary,,"Task A")
	var_Items.AddBar(hTask,"Task",{01/02/2001},{01/05/2001},"K1")
	hTask = var_Items.InsertItem(hSummary,,"Task B")
	var_Items.AddBar(hTask,"Task",{01/04/2001},{01/08/2001},"K2")
	hTask = var_Items.InsertItem(hSummary,,"Task C")
	var_Items.AddBar(hTask,"Task",{01/06/2001},{01/10/2001},"K3")
	' var_Items.ExpandItem(hSummary) = .t.
	oG2antt.TemplateDef = "dim var_Items,hSummary"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = hSummary
	oG2antt.Template = "var_Items.ExpandItem(hSummary) = True"
	var_Items.DefineSummaryBars(hSummary,"",-1,"<*>")
	' var_Items.ItemBar(hSummary,"",34) = 65536
	oG2antt.TemplateDef = "dim var_Items,hSummary"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = hSummary
	oG2antt.Template = "var_Items.ItemBar(hSummary,``,34) = 65536"
	' var_Items.ItemBar(hSummary,"",35) = 50
	oG2antt.TemplateDef = "dim var_Items,hSummary"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = hSummary
	oG2antt.Template = "var_Items.ItemBar(hSummary,``,35) = 50"
oG2antt.EndUpdate()
 | 
  | 1799 |  How do I change the color for the selected bars, without showing the frame arround 
		
			

 
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/01/2002}
	var_Chart.SelBarColor = 2130706687
	' var_Chart.PaneWidth(.f.) = 48
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(0) = 48"
oG2antt.Columns.Add("Task")
var_Items = oG2antt.Items
	var_Items.AddBar(var_Items.AddItem("Task 1"),"Task",{01/02/2002},{01/04/2002},"A")
	var_Items.AddBar(var_Items.AddItem("Task 2"),"Task",{01/06/2002},{01/10/2002},"B")
	var_Items.AddBar(var_Items.AddItem("Task 3"),"Task",{01/11/2002},{01/14/2002},"C")
	' var_Items.ItemBar(0,"<A B>",257) = .t.
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.ItemBar(0,`<A B>`,257) = True"
oG2antt.EndUpdate()
 | 
  | 1798 |  Is it possible to enumerate the activities/bars of critical path 
		
			

 
' Occurs when a bar is moved or resized.
function BarResize as v (Item  as  OLE::Exontrol.G2antt.1::HITEM, Key  as  A)
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	oG2antt.Items.SchedulePDM(Item,Key)
end function
Dim h1 as N
Dim h2 as N
Dim h3 as N
Dim h4 as N
Dim hSummary1 as N
Dim oG2antt as P
Dim var_Bars as local
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Columns.Add("Tasks")
var_Chart = oG2antt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {01/01/2001}
	' var_Chart.PaneWidth(.f.) = 96
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 96"
	' var_Chart.Bars.Item("Task").Def(3) = "<%=int(%269) > 0 ? (`<b>` + %269 + `</b>`) : ``%>"
	var_Bars = var_Chart.Bars.Item("Task")
	oG2antt.TemplateDef = "dim var_Bars"
	oG2antt.TemplateDef = var_Bars
	oG2antt.Template = "var_Bars.Def(3) = `<%=int(%269) > 0 ? (``<b>`` + %269 + ``</b>``) : ````%>`"
var_Items = oG2antt.Items
	hSummary1 = var_Items.AddItem("Summary")
	' var_Items.ItemBold(hSummary1) = .t.
	oG2antt.TemplateDef = "dim var_Items,hSummary1"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = hSummary1
	oG2antt.Template = "var_Items.ItemBold(hSummary1) = True"
	var_Items.AddBar(hSummary1,"Summary",{01/02/2001},{01/02/2001},"sum")
	h1 = var_Items.AddItem("Task 1")
	var_Items.AddBar(h1,"Task",{01/02/2001},{01/04/2001})
	var_Items.DefineSummaryBars(hSummary1,"sum",h1,"")
	h2 = var_Items.AddItem("Task 2")
	var_Items.AddBar(h2,"Task",{01/02/2001},{01/04/2001})
	var_Items.DefineSummaryBars(hSummary1,"sum",h2,"")
	var_Items.AddLink("L1",h1,"",h2,"")
	h3 = var_Items.AddItem("Task 3")
	var_Items.AddBar(h3,"Task",{01/02/2001},{01/04/2001})
	var_Items.DefineSummaryBars(hSummary1,"sum",h3,"")
	var_Items.AddLink("L2",h2,"",h3,"")
	h4 = var_Items.AddItem("Task 4")
	var_Items.AddBar(h4,"Task",{01/02/2001},{01/04/2001})
	var_Items.DefineSummaryBars(hSummary1,"sum",h4,"")
	var_Items.AddLink("L3",h1,"",h4,"")
	' var_Items.DefSchedulePDM(5) = 65280
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.DefSchedulePDM(5) = 65280"
	var_Items.SchedulePDM(h1,"")
oG2antt.EndUpdate()
 | 
  | 1797 |  How can I add a SF link 
		
			

 
Dim h1 as N
Dim h2 as N
Dim h3 as N
Dim h4 as N
Dim h5 as N
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Columns.Add("Task")
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {12/25/2000}
	' var_Chart.PaneWidth(.f.) = 48
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 48"
	var_Chart.LevelCount = 2
var_Items = oG2antt.Items
	h1 = var_Items.AddItem("Task 1")
	var_Items.AddBar(h1,"Task",{01/02/2001},{01/04/2001},"K1")
	h2 = var_Items.AddItem("Task 2")
	var_Items.AddBar(h2,"Task",{01/02/2001},{01/05/2001},"K2")
	h3 = var_Items.AddItem("Task 3")
	var_Items.AddBar(h3,"Task",{01/02/2001},{01/05/2001},"K3")
	h4 = var_Items.AddItem("Task 4")
	var_Items.AddBar(h4,"Task",{01/02/2001},{01/05/2001},"K4")
	h5 = var_Items.AddItem("Task 5")
	var_Items.AddBar(h5,"Task",{01/02/2001},{01/05/2001},"K5")
	var_Items.AddLink("L1",h1,"K1",h2,"K2")
	var_Items.AddLink("L2",h2,"K2",h3,"K3")
	var_Items.AddLink("L3",h3,"K3",h4,"K4")
	var_Items.AddLink("L4",h4,"K4",h5,"K5")
	' var_Items.Link("L4",6) = 0
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.Link(`L4`,6) = 0"
	' var_Items.Link("L4",7) = 2
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.Link(`L4`,7) = 2"
	' var_Items.Link("L4",8) = 65280
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.Link(`L4`,8) = 65280"
	var_Items.SchedulePDM(0,"K5")
oG2antt.Chart.ShowLinks = 1
oG2antt.EndUpdate()
 | 
  | 1796 |  How do I get the Start and End date of a bar 
		
			

 
Dim h as N
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Columns.Add("Tasks")
oG2antt.Debug = .t.
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {09/20/2006}
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 96
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(0) = 96"
var_Items = oG2antt.Items
	var_Items.AddBar(var_Items.AddItem("Task 1"),"Task",{09/21/2006},{09/24/2006},"K1")
	var_Items.AddBar(var_Items.AddItem("Task 2"),"Task",{09/22/2006},{09/25/2006},"K2")
	var_Items.AddBar(var_Items.AddItem("Task 3"),"Task",{09/23/2006},{09/26/2006},"K3")
	h = var_Items.ItemByIndex(1)
	' var_Items.ItemBold(h) = .t.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBold(h) = True"
	? "Start of " 
	? var_Items.FirstItemBar(h) 
	? var_Items.ItemBar(h,var_Items.FirstItemBar(h),1) 
	? "End of  " 
	? var_Items.FirstItemBar(h) 
	? var_Items.ItemBar(h,var_Items.FirstItemBar(h),2) 
oG2antt.EndUpdate()
 | 
  | 1795 |  I haven't found options to change/localize (in German, or my current regional settings) the captions/text/strings ( dates, tooltip ) that shows in the chart area (method 2) 
		
			

 
Dim oG2antt as P
Dim var_Chart as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
var_Chart = oG2antt.Chart
	var_Chart.FirstWeekDay = var_Chart.LocFirstWeekDay
	var_Chart.MonthNames = var_Chart.LocMonthNames
	var_Chart.WeekDays = var_Chart.LocWeekDays
	var_Chart.AMPM = var_Chart.LocAMPM
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 0
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 0"
	var_Chart.UnitScale = 4096
 | 
  | 1794 |  Is it possible to change caption of the print and print preview, as it just says "Untitled Document", but I cant find the code that writes this caption 
		
			

 
Dim h1 as N
Dim h2 as N
Dim oG2antt as P
Dim var_Items as P
Dim var_Print as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Columns.Add("Task")
oG2antt.Chart.FirstVisibleDate = {01/01/2001}
var_Items = oG2antt.Items
	h1 = var_Items.AddItem("Task 1")
	var_Items.AddBar(h1,"Task",{01/02/2001},{01/04/2001},"K1")
	h2 = var_Items.AddItem("Task 2")
	var_Items.AddBar(h2,"Task",{01/05/2001},{01/07/2001},"K2")
	var_Items.AddLink("L1",h1,"K1",h2,"K2")
oG2antt.EndUpdate()
var_Print = OLE.Create("Exontrol.Print")
	var_Print.Caption = "This is your new caption for print and print preview"
	var_Print.AutoRelease = .f.
	var_Print.PrintExt = oG2antt
	var_Print.Preview()
 | 
  | 1793 |  Is it possible to specify the A4 paper size for the print preview 
		
			
Dim h1 as N
Dim h2 as N
Dim oG2antt as P
Dim var_Items as P
Dim var_Print as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Columns.Add("Task")
oG2antt.Chart.FirstVisibleDate = {01/01/2001}
var_Items = oG2antt.Items
	h1 = var_Items.AddItem("Task 1")
	var_Items.AddBar(h1,"Task",{01/02/2001},{01/04/2001},"K1")
	h2 = var_Items.AddItem("Task 2")
	var_Items.AddBar(h2,"Task",{01/05/2001},{01/07/2001},"K2")
	var_Items.AddLink("L1",h1,"K1",h2,"K2")
oG2antt.EndUpdate()
var_Print = OLE.Create("Exontrol.Print")
	' var_Print.Settings(0) = 9
	oG2antt.TemplateDef = "dim var_Print"
	oG2antt.TemplateDef = var_Print
	oG2antt.Template = "var_Print.Settings(0) = 9"
	var_Print.AutoRelease = .f.
	var_Print.PrintExt = oG2antt
	var_Print.Preview()
 | 
  | 1792 |  Is it possible to tell the print preview to open up in "landscape mode" by default, not in "portrait mode" 
		
			
Dim h1 as N
Dim h2 as N
Dim oG2antt as P
Dim var_Items as P
Dim var_Print as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Columns.Add("Task")
oG2antt.Chart.FirstVisibleDate = {01/01/2001}
var_Items = oG2antt.Items
	h1 = var_Items.AddItem("Task 1")
	var_Items.AddBar(h1,"Task",{01/02/2001},{01/04/2001},"K1")
	h2 = var_Items.AddItem("Task 2")
	var_Items.AddBar(h2,"Task",{01/05/2001},{01/07/2001},"K2")
	var_Items.AddLink("L1",h1,"K1",h2,"K2")
oG2antt.EndUpdate()
var_Print = OLE.Create("Exontrol.Print")
	var_Print.PageOrientation = 2
	var_Print.AutoRelease = .f.
	var_Print.PrintExt = oG2antt
	var_Print.Preview()
 | 
  | 1791 |  How do I prevent a caption outside the bar from overlapping other bars 
		
			

 
Dim h as N
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.ScrollBySingleLine = .t.
oG2antt.Columns.Add("Task")
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/01/2001}
	' var_Chart.PaneWidth(.f.) = 48
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 48"
	var_Chart.Bars.Copy("Task","Default-Task")
	var_Chart.Bars.Item("Task").OverlaidType = 4611 'exOverlaidBarsIncludeCaption + exOverlaidBarsStackAutoArrange + exOverlaidBarsStack
var_Items = oG2antt.Items
	h = var_Items.AddItem("Task 1")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/04/2001},"A1","task")
	' var_Items.ItemBar(h,"A1",4) = 18
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`A1`,4) = 18"
	var_Items.AddBar(h,"Task",{01/06/2001},{01/10/2001},"A2","task")
	' var_Items.ItemBar(h,"A2",4) = 16
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`A2`,4) = 16"
	h = var_Items.AddItem("Task 2")
	var_Items.AddBar(h,"Default-Task",{01/02/2001},{01/04/2001},"A1","task")
	' var_Items.ItemBar(h,"A1",4) = 18
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`A1`,4) = 18"
	var_Items.AddBar(h,"Default-Task",{01/06/2001},{01/10/2001},"A2","task")
	' var_Items.ItemBar(h,"A2",4) = 16
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`A2`,4) = 16"
oG2antt.EndUpdate()
 | 
  | 1790 |  How do I clip/hide/align the bar's extra-caption/text based on the bar's size/width/length 
		
			

 
Dim h as N
Dim oG2antt as P
Dim var_Bar as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Columns.Add("Clip")
oG2antt.ScrollBySingleLine = .t.
oG2antt.DrawGridLines = -2
var_Chart = oG2antt.Chart
	var_Chart.AllowResizeChart = 6 'exAllowResizeChartMiddle + exAllowResizeChartHeader
	var_Chart.DrawGridLines = -2
	var_Chart.FirstVisibleDate = {12/23/2000}
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 216
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 216"
	var_Bar = var_Chart.Bars.Item("Task")
		var_Bar.Pattern = 32
		var_Bar.Color = 10790052
		var_Bar.StartColor = 15790320
		var_Bar.EndColor = var_Bar.StartColor
		var_Bar.OverlaidType = 4611 'exOverlaidBarsIncludeCaption + exOverlaidBarsStackAutoArrange + exOverlaidBarsStack
		var_Bar.Height = 15
	var_Chart.MinUnitWidth = var_Chart.UnitWidth
var_Items = oG2antt.Items
	h = var_Items.AddItem("no clip, (0-2)")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/04/2001},"K1")
	' var_Items.ItemBar(h,"K1",44) = "no clip, right(<b>2</b>)"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K1`,44) = `no clip, right(<b>2</b>)`"
	' var_Items.ItemBar(h,"K1",45) = 2
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K1`,45) = 2"
	var_Items.AddBar(h,"Task",{01/02/2001},{01/04/2001},"K2")
	' var_Items.ItemBar(h,"K2",44) = "no clip, center(<b>1</b>)"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K2`,44) = `no clip, center(<b>1</b>)`"
	' var_Items.ItemBar(h,"K2",45) = 1
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K2`,45) = 1"
	var_Items.AddBar(h,"Task",{01/02/2001},{01/04/2001},"K3","")
	' var_Items.ItemBar(h,"K3",44) = "no clip, left(<b>0</b>)"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K3`,44) = `no clip, left(<b>0</b>)`"
	' var_Items.ItemBar(h,"K3",45) = 0
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K3`,45) = 0"
	h = var_Items.AddItem("clip, inside (3-5)")
	var_Items.AddBar(h,"Task",{12/28/2000},{01/08/2001},"K1")
	' var_Items.ItemBar(h,"K1",44) = "clip, inside, right(<b>5</b>)"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K1`,44) = `clip, inside, right(<b>5</b>)`"
	' var_Items.ItemBar(h,"K1",45) = 5
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K1`,45) = 5"
	var_Items.AddBar(h,"Task",{12/28/2000},{01/08/2001},"K2")
	' var_Items.ItemBar(h,"K2",44) = "clip, inside, center(<b>4</b>)"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K2`,44) = `clip, inside, center(<b>4</b>)`"
	' var_Items.ItemBar(h,"K2",45) = 4
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K2`,45) = 4"
	var_Items.AddBar(h,"Task",{12/28/2000},{01/08/2001},"K3")
	' var_Items.ItemBar(h,"K3",44) = "clip, inside, left(<b>3</b>)"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K3`,44) = `clip, inside, left(<b>3</b>)`"
	' var_Items.ItemBar(h,"K3",45) = 3
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K3`,45) = 3"
	h = var_Items.AddItem("hide on min width, clip if not fit, inside (6-8)")
	var_Items.AddBar(h,"Task",{12/26/2000},{01/10/2001},"K1")
	' var_Items.ItemBar(h,"K1",44) = "hide on min width, clip if not fit, inside, right(<b>8</b>)"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K1`,44) = `hide on min width, clip if not fit, inside, right(<b>8</b>)`"
	' var_Items.ItemBar(h,"K1",45) = 8
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K1`,45) = 8"
	var_Items.AddBar(h,"Task",{12/26/2000},{01/10/2001},"K2")
	' var_Items.ItemBar(h,"K2",44) = "hide on min width, clip if not fit, inside, center(<b>7</b>)"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K2`,44) = `hide on min width, clip if not fit, inside, center(<b>7</b>)`"
	' var_Items.ItemBar(h,"K2",45) = 7
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K2`,45) = 7"
	var_Items.AddBar(h,"Task",{12/26/2000},{01/10/2001},"K3")
	' var_Items.ItemBar(h,"K3",44) = "hide on min width, clip if not fit, inside, left(<b>6</b>)"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K3`,44) = `hide on min width, clip if not fit, inside, left(<b>6</b>)`"
	' var_Items.ItemBar(h,"K3",45) = 6
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K3`,45) = 6"
	h = var_Items.AddItem("hide if not fit, no clip, inside (9-11)")
	var_Items.AddBar(h,"Task",{12/28/2000},{01/08/2001},"K1")
	' var_Items.ItemBar(h,"K1",44) = "hide if not fit, no clip, inside, right(<b>11</b>)"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K1`,44) = `hide if not fit, no clip, inside, right(<b>11</b>)`"
	' var_Items.ItemBar(h,"K1",45) = 11
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K1`,45) = 11"
	var_Items.AddBar(h,"Task",{12/28/2000},{01/08/2001},"K2")
	' var_Items.ItemBar(h,"K2",44) = "hide if not fit, no clip, center(<b>10</b>)"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K2`,44) = `hide if not fit, no clip, center(<b>10</b>)`"
	' var_Items.ItemBar(h,"K2",45) = 10
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K2`,45) = 10"
	var_Items.AddBar(h,"Task",{12/28/2000},{01/08/2001},"K3")
	' var_Items.ItemBar(h,"K3",44) = "hide if not fit, no clip, inside, left(<b>9</b>)"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K3`,44) = `hide if not fit, no clip, inside, left(<b>9</b>)`"
	' var_Items.ItemBar(h,"K3",45) = 9
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K3`,45) = 9"
	h = var_Items.AddItem("no clip, inside, outside (12-14)")
	var_Items.AddBar(h,"Task",{12/28/2000},{01/08/2001},"K1")
	' var_Items.ItemBar(h,"K1",44) = "no clip, inside, outside, right(<b>14</b>)"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K1`,44) = `no clip, inside, outside, right(<b>14</b>)`"
	' var_Items.ItemBar(h,"K1",45) = 14
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K1`,45) = 14"
	var_Items.AddBar(h,"Task",{12/28/2000},{01/08/2001},"K2")
	' var_Items.ItemBar(h,"K2",44) = "no clip, inside, outside, center(<b>13</b>)"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K2`,44) = `no clip, inside, outside, center(<b>13</b>)`"
	' var_Items.ItemBar(h,"K2",45) = 13
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K2`,45) = 13"
	var_Items.AddBar(h,"Task",{12/28/2000},{01/08/2001},"K3")
	' var_Items.ItemBar(h,"K3",44) = "no clip, inside, outside, left(<b>12</b>)"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K3`,44) = `no clip, inside, outside, left(<b>12</b>)`"
	' var_Items.ItemBar(h,"K3",45) = 12
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K3`,45) = 12"
	h = var_Items.AddItem("no clip, outside (16-18)")
	var_Items.AddBar(h,"Task",{12/30/2000},{01/06/2001},"K1")
	' var_Items.ItemBar(h,"K1",44) = "no clip, outside, right(<b>18</b>)"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K1`,44) = `no clip, outside, right(<b>18</b>)`"
	' var_Items.ItemBar(h,"K1",45) = 18
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K1`,45) = 18"
	var_Items.AddBar(h,"Task",{12/30/2000},{01/06/2001},"K2")
	' var_Items.ItemBar(h,"K2",44) = "no clip, outside, center(<b>17</b>)"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K2`,44) = `no clip, outside, center(<b>17</b>)`"
	' var_Items.ItemBar(h,"K2",45) = 17
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K2`,45) = 17"
	var_Items.AddBar(h,"Task",{12/30/2000},{01/06/2001},"K3")
	' var_Items.ItemBar(h,"K3",44) = "no clip, outside, left(<b>16</b>)"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K3`,44) = `no clip, outside, left(<b>16</b>)`"
	' var_Items.ItemBar(h,"K3",45) = 16
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K3`,45) = 16"
oG2antt.EndUpdate()
 | 
  | 1789 |  What options do I have to show the links between bars (rectangular SEV, starts vertically, ends vertically) 
		
			

 
Dim h1 as N
Dim h2 as N
Dim h3 as N
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.AntiAliasing = .t.
oG2antt.Columns.Add("Task")
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/01/2001}
	' var_Chart.PaneWidth(.f.) = 128
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 128"
	var_Chart.NonworkingDays = 0
	var_Chart.LinksWidth = 2
var_Items = oG2antt.Items
	var_Items.AddItem("")
	h3 = var_Items.AddItem("Task 3")
	var_Items.AddItem("")
	var_Items.AddBar(h3,"Task",{01/13/2001},{01/15/2001},"K3")
	h1 = var_Items.AddItem("Task 1")
	var_Items.AddItem("")
	var_Items.AddBar(h1,"Task",{01/02/2001},{01/04/2001},"K1")
	h2 = var_Items.AddItem("Task 2")
	var_Items.AddBar(h2,"Task",{01/07/2001},{01/09/2001},"K2")
	var_Items.AddItem("")
	var_Items.AddLink("L1",h1,"K1",h2,"K2")
	var_Items.AddLink("L2",h2,"K2",h3,"K3")
	' var_Items.Link("<*>",15) = 5
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.Link(`<*>`,15) = 5"
oG2antt.EndUpdate()
 | 
  | 1788 |  What options do I have to show the links between bars (rectangular SV, starts vertically, ends horizontally) 
		
			

 
Dim h1 as N
Dim h2 as N
Dim h3 as N
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.AntiAliasing = .t.
oG2antt.Columns.Add("Task")
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/01/2001}
	' var_Chart.PaneWidth(.f.) = 128
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 128"
	var_Chart.NonworkingDays = 0
	var_Chart.LinksWidth = 2
var_Items = oG2antt.Items
	var_Items.AddItem("")
	h3 = var_Items.AddItem("Task 3")
	var_Items.AddItem("")
	var_Items.AddBar(h3,"Task",{01/13/2001},{01/15/2001},"K3")
	h1 = var_Items.AddItem("Task 1")
	var_Items.AddItem("")
	var_Items.AddBar(h1,"Task",{01/02/2001},{01/04/2001},"K1")
	h2 = var_Items.AddItem("Task 2")
	var_Items.AddBar(h2,"Task",{01/07/2001},{01/09/2001},"K2")
	var_Items.AddItem("")
	var_Items.AddLink("L1",h1,"K1",h2,"K2")
	var_Items.AddLink("L2",h2,"K2",h3,"K3")
	' var_Items.Link("<*>",15) = 4
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.Link(`<*>`,15) = 4"
oG2antt.EndUpdate()
 | 
  | 1787 |  What options do I have to show the links between bars (rectangular EV, starts horizontally, ends vertically) 
		
			

 
Dim h1 as N
Dim h2 as N
Dim h3 as N
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.AntiAliasing = .t.
oG2antt.Columns.Add("Task")
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/01/2001}
	' var_Chart.PaneWidth(.f.) = 128
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 128"
	var_Chart.NonworkingDays = 0
	var_Chart.LinksWidth = 2
var_Items = oG2antt.Items
	var_Items.AddItem("")
	h3 = var_Items.AddItem("Task 3")
	var_Items.AddItem("")
	var_Items.AddBar(h3,"Task",{01/13/2001},{01/15/2001},"K3")
	h1 = var_Items.AddItem("Task 1")
	var_Items.AddItem("")
	var_Items.AddBar(h1,"Task",{01/02/2001},{01/04/2001},"K1")
	h2 = var_Items.AddItem("Task 2")
	var_Items.AddBar(h2,"Task",{01/07/2001},{01/09/2001},"K2")
	var_Items.AddItem("")
	var_Items.AddLink("L1",h1,"K1",h2,"K2")
	var_Items.AddLink("L2",h2,"K2",h3,"K3")
	' var_Items.Link("<*>",15) = 3
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.Link(`<*>`,15) = 3"
oG2antt.EndUpdate()
 | 
  | 1786 |  What options do I have to show the links between bars (straight) 
		
			

 
Dim h1 as N
Dim h2 as N
Dim h3 as N
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.AntiAliasing = .t.
oG2antt.Columns.Add("Task")
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/01/2001}
	' var_Chart.PaneWidth(.f.) = 128
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 128"
	var_Chart.NonworkingDays = 0
	var_Chart.LinksWidth = 2
var_Items = oG2antt.Items
	var_Items.AddItem("")
	h3 = var_Items.AddItem("Task 3")
	var_Items.AddItem("")
	var_Items.AddBar(h3,"Task",{01/13/2001},{01/15/2001},"K3")
	h1 = var_Items.AddItem("Task 1")
	var_Items.AddItem("")
	var_Items.AddBar(h1,"Task",{01/02/2001},{01/04/2001},"K1")
	h2 = var_Items.AddItem("Task 2")
	var_Items.AddBar(h2,"Task",{01/07/2001},{01/09/2001},"K2")
	var_Items.AddItem("")
	var_Items.AddLink("L1",h1,"K1",h2,"K2")
	var_Items.AddLink("L2",h2,"K2",h3,"K3")
	' var_Items.Link("<*>",15) = 2
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.Link(`<*>`,15) = 2"
oG2antt.EndUpdate()
 | 
  | 1785 |  What options do I have to show the links between bars (direct) 
		
			

 
Dim h1 as N
Dim h2 as N
Dim h3 as N
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.AntiAliasing = .t.
oG2antt.Columns.Add("Task")
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/01/2001}
	' var_Chart.PaneWidth(.f.) = 128
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 128"
	var_Chart.NonworkingDays = 0
	var_Chart.LinksWidth = 2
var_Items = oG2antt.Items
	var_Items.AddItem("")
	h3 = var_Items.AddItem("Task 3")
	var_Items.AddItem("")
	var_Items.AddBar(h3,"Task",{01/13/2001},{01/15/2001},"K3")
	h1 = var_Items.AddItem("Task 1")
	var_Items.AddItem("")
	var_Items.AddBar(h1,"Task",{01/02/2001},{01/04/2001},"K1")
	h2 = var_Items.AddItem("Task 2")
	var_Items.AddBar(h2,"Task",{01/07/2001},{01/09/2001},"K2")
	var_Items.AddItem("")
	var_Items.AddLink("L1",h1,"K1",h2,"K2")
	var_Items.AddLink("L2",h2,"K2",h3,"K3")
	' var_Items.Link("<*>",15) = 1
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.Link(`<*>`,15) = 1"
oG2antt.EndUpdate()
 | 
  | 1784 |  What options do I have to show the links between bars (round) 
		
			

 
Dim h1 as N
Dim h2 as N
Dim h3 as N
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.AntiAliasing = .t.
oG2antt.Columns.Add("Task")
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/01/2001}
	' var_Chart.PaneWidth(.f.) = 128
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 128"
	var_Chart.NonworkingDays = 0
	var_Chart.LinksWidth = 2
var_Items = oG2antt.Items
	var_Items.AddItem("")
	h3 = var_Items.AddItem("Task 3")
	var_Items.AddItem("")
	var_Items.AddBar(h3,"Task",{01/13/2001},{01/15/2001},"K3")
	h1 = var_Items.AddItem("Task 1")
	var_Items.AddItem("")
	var_Items.AddBar(h1,"Task",{01/02/2001},{01/04/2001},"K1")
	h2 = var_Items.AddItem("Task 2")
	var_Items.AddBar(h2,"Task",{01/07/2001},{01/09/2001},"K2")
	var_Items.AddItem("")
	var_Items.AddLink("L1",h1,"K1",h2,"K2")
	var_Items.AddLink("L2",h2,"K2",h3,"K3")
	' var_Items.Link("<*>",15) = -1
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.Link(`<*>`,15) = -1"
oG2antt.EndUpdate()
 | 
  | 1783 |  What options do I have to show the links between bars (rectangular, default) 
		
			

 
Dim h1 as N
Dim h2 as N
Dim h3 as N
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.AntiAliasing = .t.
oG2antt.Columns.Add("Task")
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/01/2001}
	' var_Chart.PaneWidth(.f.) = 128
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 128"
	var_Chart.NonworkingDays = 0
	var_Chart.LinksWidth = 2
var_Items = oG2antt.Items
	var_Items.AddItem("")
	h3 = var_Items.AddItem("Task 3")
	var_Items.AddItem("")
	var_Items.AddBar(h3,"Task",{01/13/2001},{01/15/2001},"K3")
	h1 = var_Items.AddItem("Task 1")
	var_Items.AddItem("")
	var_Items.AddBar(h1,"Task",{01/02/2001},{01/04/2001},"K1")
	h2 = var_Items.AddItem("Task 2")
	var_Items.AddBar(h2,"Task",{01/07/2001},{01/09/2001},"K2")
	var_Items.AddItem("")
	var_Items.AddLink("L1",h1,"K1",h2,"K2")
	var_Items.AddLink("L2",h2,"K2",h3,"K3")
	' var_Items.Link("<*>",15) = 0
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.Link(`<*>`,15) = 0"
oG2antt.EndUpdate()
 | 
  | 1782 |  I have a question about whether the control has the functionality to add two bars on the same item, as one would correspond to the item bar and another bar their progress, but progress is required to show dividedly at different times outside the activity bar item 
		
			

 
Dim h as N
Dim oG2antt as P
Dim var_Bar as P
Dim var_Bar1 as P
Dim var_Bar2 as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Columns.Add("Tasks")
oG2antt.BackColorLevelHeader = oG2antt.BackColor
var_Chart = oG2antt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {09/20/2006}
	' var_Chart.PaneWidth(.f.) = 64
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(0) = 64"
	var_Bar = var_Chart.Bars.Copy("Progress","TProgressD")
		' var_Bar.Def(4) = 18
		oG2antt.TemplateDef = "dim var_Bar"
		oG2antt.TemplateDef = var_Bar
		oG2antt.Template = "var_Bar.Def(4) = 18"
		var_Bar.Shape = 20
	var_Bar1 = var_Chart.Bars.Copy("Progress","TProgressC")
		' var_Bar1.Def(4) = 18
		oG2antt.TemplateDef = "dim var_Bar1"
		oG2antt.TemplateDef = var_Bar1
		oG2antt.Template = "var_Bar1.Def(4) = 18"
	var_Bar2 = var_Chart.Bars.Copy("Progress","TProgressU")
		' var_Bar2.Def(4) = 18
		oG2antt.TemplateDef = "dim var_Bar2"
		oG2antt.TemplateDef = var_Bar2
		oG2antt.Template = "var_Bar2.Def(4) = 18"
		var_Bar2.Shape = 18
var_Items = oG2antt.Items
	h = var_Items.AddItem("Task")
	var_Items.AddBar(h,"Task",{09/25/2006},{09/30/2006},"T1")
	var_Items.AddBar(h,"TProgressU",{09/25/2006},{10/04/2006},"TP1")
	var_Items.GroupBars(h,"T1",.t.,h,"TP1",.t.,3)
	' var_Items.ItemBar(h,"TP1",3) = "<font ;6>progress up"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`TP1`,3) = `<font ;6>progress up`"
	h = var_Items.AddItem("Task")
	var_Items.AddBar(h,"Task",{09/26/2006},{10/01/2006},"T2")
	var_Items.AddBar(h,"TProgressC",{09/26/2006},{10/05/2006},"TP2")
	var_Items.GroupBars(h,"T2",.t.,h,"TP2",.t.,3)
	' var_Items.ItemBar(h,"TP2",3) = "<font ;6>progress center"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`TP2`,3) = `<font ;6>progress center`"
	h = var_Items.AddItem("Task")
	var_Items.AddBar(h,"Task",{09/25/2006},{09/30/2006},"T3")
	var_Items.AddBar(h,"TProgressD",{09/25/2006},{10/06/2006},"TP3")
	var_Items.GroupBars(h,"T3",.t.,h,"TP3",.t.,3)
	' var_Items.ItemBar(h,"TP3",3) = "<font ;6>progress down"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`TP3`,3) = `<font ;6>progress down`"
oG2antt.EndUpdate()
 | 
  | 1781 |  I have a column of date-type, the question is how can I move the associated bar, instead of resizing it (summary, inclusive, working) 
		
			

 
Dim h as N
Dim h1 as N
Dim h2 as N
Dim h3 as N
Dim oG2antt as P
Dim var_Bar as P
Dim var_Bar1 as P
Dim var_Bars as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Columns as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.MarkSearchColumn = .f.
oG2antt.Indent = 11
oG2antt.HasLines = 1
oG2antt.Items.AllowCellValueToItemBar = .t.
var_Columns = oG2antt.Columns
	var_Columns.Add("Tasks")
	var_Column = var_Columns.Add("Start")
		' var_Column.Def(18) = 544
		oG2antt.TemplateDef = "dim var_Column"
		oG2antt.TemplateDef = var_Column
		oG2antt.Template = "var_Column.Def(18) = 544"
		var_Column.Editor.EditType = 7
		var_Column.LevelKey = 1
	var_Column1 = var_Columns.Add("End")
		' var_Column1.Def(18) = 546
		oG2antt.TemplateDef = "dim var_Column1"
		oG2antt.TemplateDef = var_Column1
		oG2antt.Template = "var_Column1.Def(18) = 546"
		var_Column1.Editor.EditType = 7
		var_Column1.LevelKey = 1
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {09/20/2006}
	var_Chart.AllowLinkBars = .f.
	var_Chart.AllowCreateBar = 0
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 224
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(0) = 224"
	var_Bars = var_Chart.Bars
		var_Bar = var_Bars.Add("Underline")
			var_Bar.Color = 16711680
			var_Bar.Shape = 20
		var_Bar1 = var_Bars.Add("Task:Underline")
			var_Bar1.Shortcut = "T"
			' var_Bar1.Def(20) = .t.
			oG2antt.TemplateDef = "dim var_Bar1"
			oG2antt.TemplateDef = var_Bar1
			oG2antt.Template = "var_Bar1.Def(20) = True"
var_Items = oG2antt.Items
	h = var_Items.AddItem("Project")
	var_Items.AddBar(h,"Summary",{09/21/2006},{10/03/2006})
	h1 = var_Items.InsertItem(h,,"Task 1")
	var_Items.AddBar(h1,"T",{09/21/2006},{09/24/2006})
	h2 = var_Items.InsertItem(h,,"Task 2")
	var_Items.AddBar(h2,"T",{09/24/2006},{09/28/2006})
	h3 = var_Items.InsertItem(h,,"Task 3")
	var_Items.AddBar(h3,"T",{09/28/2006},{10/03/2006})
	var_Items.DefineSummaryBars(h,"",h1,"")
	var_Items.DefineSummaryBars(h,"",h2,"")
	var_Items.DefineSummaryBars(h,"",h3,"")
	' var_Items.ExpandItem(h) = .t.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ExpandItem(h) = True"
	' var_Items.ItemBold(h) = .t.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBold(h) = True"
	' var_Items.ItemBar(h,"",544) = {09/22/2006}
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,544) = #9/22/2006#"
oG2antt.EndUpdate()
 | 
  | 1780 |  I have a column of date-type, the question is how can I move the associated bar, instead of resizing it (summary) 
		
			

 
Dim h as N
Dim h1 as N
Dim h2 as N
Dim h3 as N
Dim oG2antt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Columns as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.MarkSearchColumn = .f.
oG2antt.Indent = 11
oG2antt.HasLines = 1
oG2antt.Items.AllowCellValueToItemBar = .t.
var_Columns = oG2antt.Columns
	var_Columns.Add("Tasks")
	var_Column = var_Columns.Add("Start")
		' var_Column.Def(18) = 544
		oG2antt.TemplateDef = "dim var_Column"
		oG2antt.TemplateDef = var_Column
		oG2antt.Template = "var_Column.Def(18) = 544"
		var_Column.Editor.EditType = 7
		var_Column.LevelKey = 1
	var_Column1 = var_Columns.Add("End")
		' var_Column1.Def(18) = 545
		oG2antt.TemplateDef = "dim var_Column1"
		oG2antt.TemplateDef = var_Column1
		oG2antt.Template = "var_Column1.Def(18) = 545"
		var_Column1.Editor.EditType = 7
		var_Column1.LevelKey = 1
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {09/20/2006}
	var_Chart.AllowLinkBars = .f.
	var_Chart.AllowCreateBar = 0
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 224
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(0) = 224"
var_Items = oG2antt.Items
	h = var_Items.AddItem("Project")
	var_Items.AddBar(h,"Summary",{09/21/2006},{10/03/2006})
	h1 = var_Items.InsertItem(h,,"Task 1")
	var_Items.AddBar(h1,"Task",{09/21/2006},{09/24/2006})
	h2 = var_Items.InsertItem(h,,"Task 2")
	var_Items.AddBar(h2,"Task",{09/24/2006},{09/28/2006})
	h3 = var_Items.InsertItem(h,,"Task 3")
	var_Items.AddBar(h3,"Task",{09/28/2006},{10/03/2006})
	var_Items.DefineSummaryBars(h,"",h1,"")
	var_Items.DefineSummaryBars(h,"",h2,"")
	var_Items.DefineSummaryBars(h,"",h3,"")
	' var_Items.ExpandItem(h) = .t.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ExpandItem(h) = True"
	' var_Items.ItemBold(h) = .t.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBold(h) = True"
	' var_Items.ItemBar(h,"",544) = {09/22/2006}
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,544) = #9/22/2006#"
oG2antt.EndUpdate()
 | 
  | 1779 |  Is it possible to programmatically move all bars of specified key to end at specified date (inclusive) 
		
			

 
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Debug = .t.
oG2antt.Columns.Add("Tasks")
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/01/2001}
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 48
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 48"
var_Items = oG2antt.Items
	var_Items.AddBar(var_Items.AddItem("Task A.1"),"Task",{01/01/2001},{01/06/2001},"A")
	var_Items.AddBar(var_Items.AddItem("Task A.2"),"Task",{01/02/2001},{01/07/2001},"A")
	var_Items.AddBar(var_Items.AddItem("Task B.1"),"Task",{01/03/2001},{01/08/2001},"B")
	var_Items.AddBar(var_Items.AddItem("Task B.2"),"Task",{01/04/2001},{01/09/2001},"B")
	' var_Items.ItemBar(0,"<A*>",546) = {01/02/2001}
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.ItemBar(0,`<A*>`,546) = #1/2/2001#"
oG2antt.EndUpdate()
 | 
  | 1778 |  Is it possible to programmatically move all bars to end at specified date (inclusive) 
		
			

 
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Debug = .t.
oG2antt.Columns.Add("Tasks")
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/01/2001}
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 48
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 48"
var_Items = oG2antt.Items
	var_Items.AddBar(var_Items.AddItem("Task A.1"),"Task",{01/01/2001},{01/06/2001},"A")
	var_Items.AddBar(var_Items.AddItem("Task A.2"),"Task",{01/02/2001},{01/07/2001},"A")
	var_Items.AddBar(var_Items.AddItem("Task B.1"),"Task",{01/03/2001},{01/08/2001},"B")
	var_Items.AddBar(var_Items.AddItem("Task B.2"),"Task",{01/04/2001},{01/09/2001},"B")
	' var_Items.ItemBar(0,"<*>",546) = {01/02/2001}
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.ItemBar(0,`<*>`,546) = #1/2/2001#"
oG2antt.EndUpdate()
 | 
  | 1777 |  Is it possible to programmatically move all bars of specified key to end at specified date 
		
			

 
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Debug = .t.
oG2antt.Columns.Add("Tasks")
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/01/2001}
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 48
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 48"
var_Items = oG2antt.Items
	var_Items.AddBar(var_Items.AddItem("Task A.1"),"Task",{01/01/2001},{01/06/2001},"A")
	var_Items.AddBar(var_Items.AddItem("Task A.2"),"Task",{01/02/2001},{01/07/2001},"A")
	var_Items.AddBar(var_Items.AddItem("Task B.1"),"Task",{01/03/2001},{01/08/2001},"B")
	var_Items.AddBar(var_Items.AddItem("Task B.2"),"Task",{01/04/2001},{01/09/2001},"B")
	' var_Items.ItemBar(0,"<A*>",545) = {01/02/2001}
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.ItemBar(0,`<A*>`,545) = #1/2/2001#"
oG2antt.EndUpdate()
 | 
  | 1776 |  Is it possible to programmatically move all bars to end at specified date 
		
			

 
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Debug = .t.
oG2antt.Columns.Add("Tasks")
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/01/2001}
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 48
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 48"
var_Items = oG2antt.Items
	var_Items.AddBar(var_Items.AddItem("Task A.1"),"Task",{01/01/2001},{01/06/2001},"A")
	var_Items.AddBar(var_Items.AddItem("Task A.2"),"Task",{01/02/2001},{01/07/2001},"A")
	var_Items.AddBar(var_Items.AddItem("Task B.1"),"Task",{01/03/2001},{01/08/2001},"B")
	var_Items.AddBar(var_Items.AddItem("Task B.2"),"Task",{01/04/2001},{01/09/2001},"B")
	' var_Items.ItemBar(0,"<*>",545) = {01/02/2001}
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.ItemBar(0,`<*>`,545) = #1/2/2001#"
oG2antt.EndUpdate()
 | 
  | 1775 |  Is it possible to programmatically move all bars of specified key to start at specified date 
		
			

 
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Debug = .t.
oG2antt.Columns.Add("Tasks")
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/01/2001}
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 48
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 48"
var_Items = oG2antt.Items
	var_Items.AddBar(var_Items.AddItem("Task A.1"),"Task",{01/01/2001},{01/06/2001},"A")
	var_Items.AddBar(var_Items.AddItem("Task A.2"),"Task",{01/02/2001},{01/07/2001},"A")
	var_Items.AddBar(var_Items.AddItem("Task B.1"),"Task",{01/03/2001},{01/08/2001},"B")
	var_Items.AddBar(var_Items.AddItem("Task B.2"),"Task",{01/04/2001},{01/09/2001},"B")
	' var_Items.ItemBar(0,"<A*>",544) = {01/02/2001}
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.ItemBar(0,`<A*>`,544) = #1/2/2001#"
oG2antt.EndUpdate()
 | 
  | 1774 |  Is it possible to programmatically move all bars to start at specified date 
		
			

 
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Debug = .t.
oG2antt.Columns.Add("Tasks")
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/01/2001}
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 48
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 48"
var_Items = oG2antt.Items
	var_Items.AddBar(var_Items.AddItem("Task A.1"),"Task",{01/01/2001},{01/06/2001},"A")
	var_Items.AddBar(var_Items.AddItem("Task A.2"),"Task",{01/02/2001},{01/07/2001},"A")
	var_Items.AddBar(var_Items.AddItem("Task B.1"),"Task",{01/03/2001},{01/08/2001},"B")
	var_Items.AddBar(var_Items.AddItem("Task B.2"),"Task",{01/04/2001},{01/09/2001},"B")
	' var_Items.ItemBar(0,"<*>",544) = {01/02/2001}
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.ItemBar(0,`<*>`,544) = #1/2/2001#"
oG2antt.EndUpdate()
 | 
  | 1773 |  Is it possible to programmatically move all bars of specified key 
		
			

 
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Debug = .t.
oG2antt.Columns.Add("Tasks")
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/01/2001}
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 48
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 48"
var_Items = oG2antt.Items
	var_Items.AddBar(var_Items.AddItem("Task A.1"),"Task",{01/01/2001},{01/06/2001},"A")
	var_Items.AddBar(var_Items.AddItem("Task A.2"),"Task",{01/02/2001},{01/07/2001},"A")
	var_Items.AddBar(var_Items.AddItem("Task B.1"),"Task",{01/03/2001},{01/08/2001},"B")
	var_Items.AddBar(var_Items.AddItem("Task B.2"),"Task",{01/04/2001},{01/09/2001},"B")
	' var_Items.ItemBar(0,"<A*>",514) = 2
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.ItemBar(0,`<A*>`,514) = 2"
oG2antt.EndUpdate()
 | 
  | 1772 |  Is it possible to programmatically move all bars 
		
			

 
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Debug = .t.
oG2antt.Columns.Add("Tasks")
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/01/2001}
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 48
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 48"
var_Items = oG2antt.Items
	var_Items.AddBar(var_Items.AddItem("Task A.1"),"Task",{01/01/2001},{01/06/2001},"A")
	var_Items.AddBar(var_Items.AddItem("Task A.2"),"Task",{01/02/2001},{01/07/2001},"A")
	var_Items.AddBar(var_Items.AddItem("Task B.1"),"Task",{01/03/2001},{01/08/2001},"B")
	var_Items.AddBar(var_Items.AddItem("Task B.2"),"Task",{01/04/2001},{01/09/2001},"B")
	' var_Items.ItemBar(0,"<*>",514) = 2
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.ItemBar(0,`<*>`,514) = 2"
oG2antt.EndUpdate()
 | 
  | 1771 |  How can I programmatically move a bar, so it ends at specified date (inclusive) 
		
			
Dim h as N
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.Columns.Add("Tasks")
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/01/2001}
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 48
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 48"
var_Items = oG2antt.Items
	h = var_Items.AddItem("Task 1")
	var_Items.AddBar(h,"Task",{01/01/2001},{01/06/2001},"A")
	' var_Items.ItemBar(h,"A",546) = {01/04/2001}
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`A`,546) = #1/4/2001#"
 | 
  | 1770 |  How can I programmatically move a bar, so it ends at specified date 
		
			
Dim h as N
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.Columns.Add("Tasks")
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/01/2001}
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 48
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 48"
var_Items = oG2antt.Items
	h = var_Items.AddItem("Task 1")
	var_Items.AddBar(h,"Task",{01/01/2001},{01/06/2001},"A")
	' var_Items.ItemBar(h,"A",545) = {01/04/2001}
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`A`,545) = #1/4/2001#"
 | 
  | 1769 |  How can I programmatically move a bar, so it starts at specified date 
		
			
Dim h as N
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.Columns.Add("Tasks")
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/01/2001}
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 48
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 48"
var_Items = oG2antt.Items
	h = var_Items.AddItem("Task 1")
	var_Items.AddBar(h,"Task",{01/01/2001},{01/06/2001},"A")
	' var_Items.ItemBar(h,"A",544) = {01/04/2001}
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`A`,544) = #1/4/2001#"
 | 
  | 1768 |  I can’t figure out how to control the date and time format (in level 0, 1 and 2) when the user click on the OverviewZoom bottom 
		
			

 
Dim oG2antt as P
Dim var_Chart as P
Dim var_Level as P
Dim var_Level1 as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.HeaderHeight = 22
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/01/2016}
	' var_Chart.PaneWidth(.f.) = 0
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 0"
	var_Chart.LevelCount = 2
	var_Chart.DrawLevelSeparator = 2
	var_Chart.AllowResizeChart = 6 'exAllowResizeChartMiddle + exAllowResizeChartHeader
	var_Chart.MaxUnitWidth = 196
	var_Level = var_Chart.Level(0)
		var_Level.Alignment = 17 'exHOutside + CenterAlignment
		var_Level.DrawTickLines = 2
	var_Level1 = var_Chart.Level(1)
		var_Level1.DrawTickLines = 65 'exLevelMiddleLine + exLevelDotLine
		var_Level1.DrawTickLinesFrom(0,2)
		var_Level1.BackColor = 15790320
	var_Chart.OverviewVisible = 2
	var_Chart.AllowOverviewZoom = 1
	var_Chart.UnitWidth = 24
	' var_Chart.Label(16777216) = ""
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.Label(16777216) = ``"
	' var_Chart.Label(1048576) = ""
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.Label(1048576) = ``"
	' var_Chart.Label(65536) = ""
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.Label(65536) = ``"
	' var_Chart.Label(256) = ""
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.Label(256) = ``"
	' var_Chart.Label(4096) = "<font ;6><%d%><|><%d%><|><%d%> <fgcolor=A0A0A0><off -4><%d1%><|><%d%> <fgcolor=A0A0A0><off -4><%d2%><|><%d%> <fgcolor=A0A0A0><off -4><%d3%><|><%d%> <fgcolor=A0A0A0><off -4><%dddd%><||><||>4096"
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.Label(4096) = `<font ;6><%d%><|><%d%><|><%d%> <fgcolor=A0A0A0><off -4><%d1%><|><%d%> <fgcolor=A0A0A0><off -4><%d2%><|><%d%> <fgcolor=A0A0A0><off -4><%d3%><|><%d%> <fgcolor=A0A0A0><off -4><%dddd%><||><||>4096`"
	var_Chart.UnitScale = 4096
	var_Chart.ScrollTo(var_Chart.FirstVisibleDate,1)
oG2antt.Columns.Add("Default")
oG2antt.EndUpdate()
 | 
  | 1767 |  Can I use GroupBars with OverlaidType method 
		
			

 
Dim h as N
Dim h1 as N
Dim h2 as 
Dim h3 as 
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Columns.Add("Tasks")
oG2antt.Debug = .t.
oG2antt.LinesAtRoot = -1
oG2antt.ScrollBySingleLine = .t.
oG2antt.BackColorLevelHeader = oG2antt.BackColor
var_Chart = oG2antt.Chart
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {09/20/2006}
	' var_Chart.PaneWidth(.f.) = 96
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(0) = 96"
	var_Chart.Bars.Item("Task").OverlaidType = 3
var_Items = oG2antt.Items
	h = var_Items.AddItem("Project")
	var_Items.AddBar(h,"Summary",{09/21/2006},{10/04/2006})
	h1 = var_Items.InsertItem(h,,"Tasks")
	var_Items.AddBar(h1,"Task",{09/21/2006},{09/26/2006},"h1")
	h2 = h1
	var_Items.AddBar(h2,"Task",{09/25/2006},{09/30/2006},"h2")
	var_Items.AddLink("L1",h1,"h1",h2,"h2")
	h3 = h1
	var_Items.AddBar(h3,"Task",{09/29/2006},{10/04/2006},"h3")
	var_Items.AddLink("L2",h2,"h2",h3,"h3")
	var_Items.DefineSummaryBars(h,"",h1,"h1")
	var_Items.DefineSummaryBars(h,"",h2,"h2")
	var_Items.DefineSummaryBars(h,"",h3,"h3")
	' var_Items.ExpandItem(h) = .t.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ExpandItem(h) = True"
	' var_Items.ItemBold(h) = .t.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBold(h) = True"
	var_Items.GroupBars(h1,"h1",.f.,h2,"h2",.t.,31,"0;5;-1")
	var_Items.GroupBars(h2,"h2",.f.,h3,"h3",.t.,31,"0;5;-1")
oG2antt.EndUpdate()
 | 
  | 1766 |  How do I change the link's lag so I can schedule bars to start later (with nonworking part) 
		
			

 
' Occurs when a bar is moving or resizing.
function BarResizing as v (Item  as  OLE::Exontrol.G2antt.1::HITEM, Key  as  A)
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	oG2antt.Items.SchedulePDM(Item,Key)
end function
Dim h1 as N
Dim h2 as N
Dim h3 as N
Dim h4 as N
Dim oG2antt as P
Dim var_Bar as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.DefaultItemHeight = 22
oG2antt.HeaderHeight = oG2antt.DefaultItemHeight
oG2antt.BackColorLevelHeader = oG2antt.BackColor
oG2antt.AntiAliasing = .t.
oG2antt.Columns.Add("Task")
var_Chart = oG2antt.Chart
	var_Chart.LinksStyle = 0
	var_Chart.LinksColor = 8421504
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/28/2000}
	' var_Chart.PaneWidth(.f.) = 48
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 48"
	var_Bar = var_Chart.Bars.Item("Task")
		' var_Bar.Def(20) = .t.
		oG2antt.TemplateDef = "dim var_Bar"
		oG2antt.TemplateDef = var_Bar
		oG2antt.Template = "var_Bar.Def(20) = True"
		' var_Bar.Def(4) = 18
		oG2antt.TemplateDef = "dim var_Bar"
		oG2antt.TemplateDef = var_Bar
		oG2antt.Template = "var_Bar.Def(4) = 18"
		var_Bar.Color = 0
		var_Bar.StartColor = 12500670
		var_Bar.EndColor = var_Bar.StartColor
		var_Bar.Pattern = 32
var_Items = oG2antt.Items
	h1 = var_Items.AddItem("Task 1")
	var_Items.AddBar(h1,"Task",{01/02/2001},{01/05/2001},"K1","FS lag=0 (default)")
	h2 = var_Items.AddItem("Task 2")
	var_Items.AddBar(h2,"Task",{01/02/2001},{01/05/2001},"K2","FS lag=4")
	var_Items.AddLink("L1",h1,"K1",h2,"K2")
	h3 = var_Items.AddItem("Task 3")
	var_Items.AddBar(h3,"Task",{01/02/2001},{01/05/2001},"K3","FS lag=-1")
	var_Items.AddLink("L2",h2,"K2",h3,"K3")
	' var_Items.Link("L2",16) = 4
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.Link(`L2`,16) = 4"
	h4 = var_Items.AddItem("Task 4")
	var_Items.AddBar(h4,"Task",{01/02/2001},{01/05/2001},"K4")
	var_Items.AddLink("L3",h3,"K3",h4,"K4")
	' var_Items.Link("L3",16) = -1
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.Link(`L3`,16) = -1"
	var_Items.SchedulePDM(0,"K1")
oG2antt.EndUpdate()
 | 
  | 1765 |  How do I change the link's lag so I can schedule bars to start later (without nonworking part) 
		
			

 
' Occurs when a bar is moving or resizing.
function BarResizing as v (Item  as  OLE::Exontrol.G2antt.1::HITEM, Key  as  A)
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	oG2antt.Items.SchedulePDM(Item,Key)
end function
Dim h1 as N
Dim h2 as N
Dim h3 as N
Dim h4 as N
Dim oG2antt as P
Dim var_Bar as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.DefaultItemHeight = 22
oG2antt.HeaderHeight = oG2antt.DefaultItemHeight
oG2antt.BackColorLevelHeader = oG2antt.BackColor
oG2antt.AntiAliasing = .t.
oG2antt.Columns.Add("Task")
var_Chart = oG2antt.Chart
	var_Chart.LinksStyle = 0
	var_Chart.LinksColor = 8421504
	var_Chart.LevelCount = 2
	var_Chart.NonworkingDays = 0
	var_Chart.FirstVisibleDate = {12/28/2000}
	' var_Chart.PaneWidth(.f.) = 48
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 48"
	var_Bar = var_Chart.Bars.Item("Task")
		' var_Bar.Def(4) = 18
		oG2antt.TemplateDef = "dim var_Bar"
		oG2antt.TemplateDef = var_Bar
		oG2antt.Template = "var_Bar.Def(4) = 18"
		var_Bar.Color = 0
		var_Bar.StartColor = 12500670
		var_Bar.EndColor = var_Bar.StartColor
		var_Bar.Pattern = 32
var_Items = oG2antt.Items
	h1 = var_Items.AddItem("Task 1")
	var_Items.AddBar(h1,"Task",{01/02/2001},{01/05/2001},"K1","FS lag=0 (default)")
	h2 = var_Items.AddItem("Task 2")
	var_Items.AddBar(h2,"Task",{01/02/2001},{01/05/2001},"K2","FS lag=4")
	var_Items.AddLink("L1",h1,"K1",h2,"K2")
	h3 = var_Items.AddItem("Task 3")
	var_Items.AddBar(h3,"Task",{01/02/2001},{01/05/2001},"K3","FS lag=-1")
	var_Items.AddLink("L2",h2,"K2",h3,"K3")
	' var_Items.Link("L2",17) = 4
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.Link(`L2`,17) = 4"
	h4 = var_Items.AddItem("Task 4")
	var_Items.AddBar(h4,"Task",{01/02/2001},{01/05/2001},"K4")
	var_Items.AddLink("L3",h3,"K3",h4,"K4")
	' var_Items.Link("L3",17) = -1
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.Link(`L3`,17) = -1"
	var_Items.SchedulePDM(0,"K1")
oG2antt.EndUpdate()
 | 
  | 1764 |  Is it possible to select the entire row/line, when user clicks the first column, and select individually the rest of cells, while user clicks any other column 
		
			

 
' Occurs after a new Group Item has been inserted to Items collection.
function AddGroupItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM)
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		var_Items.AddBar(Item,"Summary",var_Items.CellValue(Item,2),var_Items.CellValue(Item,4))
		var_Items.DefineSummaryBars(Item,"",-3,"")
end function
' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM)
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		var_Items.AddBar(Item,"Task",var_Items.CellValue(Item,2),var_Items.CellValue(Item,4))
end function
' Occurs when the user presses a mouse button.
function MouseDown as v (Button  as  N, Shift  as  N, X  as  OLE::Exontrol.G2antt.1::OLE_XPOS_PIXELS, Y  as  OLE::Exontrol.G2antt.1::OLE_YPOS_PIXELS)
	Dim i as N
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	i = oG2antt.ItemFromPoint(-1,-1,c,hit)
	oG2antt.FullRowSelect = oG2antt.Columns.Item(c).Data
end function
Dim oG2antt as P
Dim rs as P
Dim var_Chart as local
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.HeaderHeight = 22
oG2antt.HeaderAppearance = 1
oG2antt.BackColorLock = 15790320
oG2antt.BackColorHeader = oG2antt.BackColorLock
oG2antt.HasLines = 0
oG2antt.ColumnAutoResize = .f.
oG2antt.SortBarVisible = .f.
oG2antt.AllowGroupBy = .t.
oG2antt.ReadOnly = -1
oG2antt.ShowFocusRect = .f.
oG2antt.CountLockedColumns = 1
oG2antt.AutoDrag = 16
oG2antt.SingleSort = .f.
oG2antt.ColumnsAllowSizing = .t.
oG2antt.DrawGridLines = -1
oG2antt.GridLineStyle = 48
oG2antt.GridLineColor = 14474460
oG2antt.Chart.FirstVisibleDate = {09/01/1994}
oG2antt.Chart.LevelCount = 2
' oG2antt.Chart.PaneWidth(.f.) = 256
var_Chart = oG2antt.Chart
oG2antt.TemplateDef = "dim var_Chart"
oG2antt.TemplateDef = var_Chart
oG2antt.Template = "var_Chart.PaneWidth(False) = 256"
oG2antt.BackColorSortBar = oG2antt.BackColor
oG2antt.ColumnAutoResize = .f.
rs = OLE.Create("ADOR.Recordset")
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3)
oG2antt.DataSource = rs
oG2antt.Columns.Item(0).Data = -1
oG2antt.Layout = "singlesort=\"C5:1\";multiplesort=\" C1:2\""
oG2antt.EndUpdate()
 | 
  | 1763 |  I've also hit a strange problem with the BeforeExpandItem event - the Cancel parameter is declared as const in Delphi when I believe it should be declared as var or out so I can use it to return OleVariant(True) to cancel the operation, or am I missing something, or how can I disable expanding / collapsing the items 
		
			
' Fired before an item is about to be expanded (collapsed).
function BeforeExpandItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM, Cancel  as  A)
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	oG2antt.Template = "EventParam(1) = True" // oG2antt.EventParam(1) = .t.
end function
' Notifies the application once the control fires an event.
function Event as v (EventID  as  N)
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	? oG2antt.EventParam(-2) 
end function
Dim h as N
Dim oG2antt as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.LinesAtRoot = -1
oG2antt.Columns.Add("Default")
var_Items = oG2antt.Items
	h = var_Items.AddItem("Root A")
	var_Items.InsertItem(h,,"Child 1")
	var_Items.InsertItem(h,,"Child 2")
	' var_Items.ExpandItem(h) = .t.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ExpandItem(h) = True"
	h = var_Items.AddItem("Root B")
	var_Items.InsertItem(h,,"Child 1")
	var_Items.InsertItem(h,,"Child 2")
	' var_Items.ExpandItem(h) = .t.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ExpandItem(h) = True"
oG2antt.EndUpdate()
 | 
  | 1762 |  Is there any way I can get rid / hide of the vertical blue lines ( today, selected date ) 
		
			
Dim oG2antt as P
Dim var_Chart as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
var_Chart = oG2antt.Chart
	' var_Chart.PaneWidth(.f.) = 128
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 128"
	var_Chart.LevelCount = 2
	var_Chart.MarkSelectDateColor = var_Chart.BackColor
	var_Chart.MarkTodayColor = var_Chart.BackColor
oG2antt.EndUpdate()
 | 
  | 1761 |  Is it possible to search for a bar through items only ( not including the locked items ) 
		
			

 
Dim h as N
Dim oG2antt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Items as P
Dim var_Items1 as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Debug = .t.
var_Chart = oG2antt.Chart
	' var_Chart.PaneWidth(.f.) = 128
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 128"
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/31/2015}
oG2antt.BackColorAlternate = 16448250
oG2antt.ShowLockedItems = .t.
oG2antt.Columns.Add("Column")
var_Column = oG2antt.Columns.Add("Find")
	' var_Column.Def(17) = 1
	oG2antt.TemplateDef = "dim var_Column"
	oG2antt.TemplateDef = var_Column
	oG2antt.Template = "var_Column.Def(17) = 1"
	var_Column.Visible = .f.
	var_Column.FormatColumn = "int(value) = 0 ? `` : ` <fgcolor=FF0000><b>found here ` "
oG2antt.Chart.ColumnsFormatLevel = "1"
var_Items = oG2antt.Items
	' var_Items.LockedItemCount(0) = 3
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.LockedItemCount(0) = 3"
	h = var_Items.LockedItem(0,0)
	' var_Items.CellValue(h,0) = "locked-top 1"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,0) = `locked-top 1`"
	var_Items.AddBar(h,"Task",{01/04/2016},{01/08/2016},"T1")
	h = var_Items.LockedItem(0,1)
	' var_Items.CellValue(h,0) = "locked-top 2"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,0) = `locked-top 2`"
	var_Items.AddBar(h,"Task",{01/05/2016},{01/09/2016},"T2")
	h = var_Items.LockedItem(0,2)
	' var_Items.SelectItem(h) = .f.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.SelectItem(h) = False"
	' var_Items.ItemDivider(h) = 0
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemDivider(h) = 0"
	' var_Items.ItemHeight(h) = 2
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemHeight(h) = 2"
	var_Items.AddBar(var_Items.AddItem("un-locked item 1"),"Task",{01/04/2016},{01/08/2016},"T3")
	var_Items.AddBar(var_Items.AddItem("un-locked item 2"),"Task",{01/05/2016},{01/09/2016},"T4")
	' var_Items.LockedItemCount(1) = 3
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.LockedItemCount(1) = 3"
	h = var_Items.LockedItem(1,0)
	' var_Items.SelectItem(h) = .f.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.SelectItem(h) = False"
	' var_Items.ItemDivider(h) = 0
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemDivider(h) = 0"
	' var_Items.ItemHeight(h) = 2
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemHeight(h) = 2"
	h = var_Items.LockedItem(1,1)
	' var_Items.CellValue(h,0) = "locked-bottom 1"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,0) = `locked-bottom 1`"
	var_Items.AddBar(h,"Task",{01/04/2016},{01/08/2016},"T5")
	h = var_Items.LockedItem(1,2)
	' var_Items.CellValue(h,0) = "locked-bottom 2"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,0) = `locked-bottom 2`"
	var_Items.AddBar(h,"Task",{01/05/2016},{01/09/2016},"T6")
var_Items1 = oG2antt.Items
	h = var_Items1.FindBar("T4",0)
	' var_Items1.ItemBar(h,var_Items1.FirstItemBar(h),33) = 255
	oG2antt.TemplateDef = "dim var_Items1,h"
	oG2antt.TemplateDef = var_Items1
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items1.ItemBar(h,FirstItemBar(h),33) = 255"
	' var_Items1.CellValue(h,1) = h
	oG2antt.TemplateDef = "dim var_Items1,h"
	oG2antt.TemplateDef = var_Items1
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items1.CellValue(h,1) = h"
oG2antt.EndUpdate()
 | 
  | 1760 |  Is it possible to search for a bar through bottom-locked-items only 
		
			

 
Dim h as N
Dim oG2antt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Items as P
Dim var_Items1 as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Debug = .t.
var_Chart = oG2antt.Chart
	' var_Chart.PaneWidth(.f.) = 128
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 128"
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/31/2015}
oG2antt.BackColorAlternate = 16448250
oG2antt.ShowLockedItems = .t.
oG2antt.Columns.Add("Column")
var_Column = oG2antt.Columns.Add("Find")
	' var_Column.Def(17) = 1
	oG2antt.TemplateDef = "dim var_Column"
	oG2antt.TemplateDef = var_Column
	oG2antt.Template = "var_Column.Def(17) = 1"
	var_Column.Visible = .f.
	var_Column.FormatColumn = "int(value) = 0 ? `` : ` <fgcolor=FF0000><b>found here ` "
oG2antt.Chart.ColumnsFormatLevel = "1"
var_Items = oG2antt.Items
	' var_Items.LockedItemCount(0) = 3
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.LockedItemCount(0) = 3"
	h = var_Items.LockedItem(0,0)
	' var_Items.CellValue(h,0) = "locked-top 1"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,0) = `locked-top 1`"
	var_Items.AddBar(h,"Task",{01/04/2016},{01/08/2016},"T1")
	h = var_Items.LockedItem(0,1)
	' var_Items.CellValue(h,0) = "locked-top 2"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,0) = `locked-top 2`"
	var_Items.AddBar(h,"Task",{01/05/2016},{01/09/2016},"T2")
	h = var_Items.LockedItem(0,2)
	' var_Items.SelectItem(h) = .f.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.SelectItem(h) = False"
	' var_Items.ItemDivider(h) = 0
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemDivider(h) = 0"
	' var_Items.ItemHeight(h) = 2
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemHeight(h) = 2"
	var_Items.AddBar(var_Items.AddItem("un-locked item 1"),"Task",{01/04/2016},{01/08/2016},"T3")
	var_Items.AddBar(var_Items.AddItem("un-locked item 2"),"Task",{01/05/2016},{01/09/2016},"T4")
	' var_Items.LockedItemCount(1) = 3
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.LockedItemCount(1) = 3"
	h = var_Items.LockedItem(1,0)
	' var_Items.SelectItem(h) = .f.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.SelectItem(h) = False"
	' var_Items.ItemDivider(h) = 0
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemDivider(h) = 0"
	' var_Items.ItemHeight(h) = 2
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemHeight(h) = 2"
	h = var_Items.LockedItem(1,1)
	' var_Items.CellValue(h,0) = "locked-bottom 1"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,0) = `locked-bottom 1`"
	var_Items.AddBar(h,"Task",{01/04/2016},{01/08/2016},"T5")
	h = var_Items.LockedItem(1,2)
	' var_Items.CellValue(h,0) = "locked-bottom 2"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,0) = `locked-bottom 2`"
	var_Items.AddBar(h,"Task",{01/05/2016},{01/09/2016},"T6")
var_Items1 = oG2antt.Items
	h = var_Items1.FindBar("T6",-4)
	' var_Items1.ItemBar(h,var_Items1.FirstItemBar(h),33) = 255
	oG2antt.TemplateDef = "dim var_Items1,h"
	oG2antt.TemplateDef = var_Items1
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items1.ItemBar(h,FirstItemBar(h),33) = 255"
	' var_Items1.CellValue(h,1) = h
	oG2antt.TemplateDef = "dim var_Items1,h"
	oG2antt.TemplateDef = var_Items1
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items1.CellValue(h,1) = h"
oG2antt.EndUpdate()
 | 
  | 1759 |  Is it possible to search for a bar through top-locked-items only 
		
			

 
Dim h as N
Dim oG2antt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Items as P
Dim var_Items1 as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Debug = .t.
var_Chart = oG2antt.Chart
	' var_Chart.PaneWidth(.f.) = 128
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 128"
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/31/2015}
oG2antt.BackColorAlternate = 16448250
oG2antt.ShowLockedItems = .t.
oG2antt.Columns.Add("Column")
var_Column = oG2antt.Columns.Add("Find")
	' var_Column.Def(17) = 1
	oG2antt.TemplateDef = "dim var_Column"
	oG2antt.TemplateDef = var_Column
	oG2antt.Template = "var_Column.Def(17) = 1"
	var_Column.Visible = .f.
	var_Column.FormatColumn = "int(value) = 0 ? `` : ` <fgcolor=FF0000><b>found here ` "
oG2antt.Chart.ColumnsFormatLevel = "1"
var_Items = oG2antt.Items
	' var_Items.LockedItemCount(0) = 3
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.LockedItemCount(0) = 3"
	h = var_Items.LockedItem(0,0)
	' var_Items.CellValue(h,0) = "locked-top 1"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,0) = `locked-top 1`"
	var_Items.AddBar(h,"Task",{01/04/2016},{01/08/2016},"T1")
	h = var_Items.LockedItem(0,1)
	' var_Items.CellValue(h,0) = "locked-top 2"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,0) = `locked-top 2`"
	var_Items.AddBar(h,"Task",{01/05/2016},{01/09/2016},"T2")
	h = var_Items.LockedItem(0,2)
	' var_Items.SelectItem(h) = .f.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.SelectItem(h) = False"
	' var_Items.ItemDivider(h) = 0
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemDivider(h) = 0"
	' var_Items.ItemHeight(h) = 2
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemHeight(h) = 2"
	var_Items.AddBar(var_Items.AddItem("un-locked item 1"),"Task",{01/04/2016},{01/08/2016},"T3")
	var_Items.AddBar(var_Items.AddItem("un-locked item 2"),"Task",{01/05/2016},{01/09/2016},"T4")
	' var_Items.LockedItemCount(1) = 3
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.LockedItemCount(1) = 3"
	h = var_Items.LockedItem(1,0)
	' var_Items.SelectItem(h) = .f.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.SelectItem(h) = False"
	' var_Items.ItemDivider(h) = 0
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemDivider(h) = 0"
	' var_Items.ItemHeight(h) = 2
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemHeight(h) = 2"
	h = var_Items.LockedItem(1,1)
	' var_Items.CellValue(h,0) = "locked-bottom 1"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,0) = `locked-bottom 1`"
	var_Items.AddBar(h,"Task",{01/04/2016},{01/08/2016},"T5")
	h = var_Items.LockedItem(1,2)
	' var_Items.CellValue(h,0) = "locked-bottom 2"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,0) = `locked-bottom 2`"
	var_Items.AddBar(h,"Task",{01/05/2016},{01/09/2016},"T6")
var_Items1 = oG2antt.Items
	h = var_Items1.FindBar("T1",-3)
	' var_Items1.ItemBar(h,var_Items1.FirstItemBar(h),33) = 255
	oG2antt.TemplateDef = "dim var_Items1,h"
	oG2antt.TemplateDef = var_Items1
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items1.ItemBar(h,FirstItemBar(h),33) = 255"
	' var_Items1.CellValue(h,1) = h
	oG2antt.TemplateDef = "dim var_Items1,h"
	oG2antt.TemplateDef = var_Items1
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items1.CellValue(h,1) = h"
oG2antt.EndUpdate()
 | 
  | 1758 |  Is it possible to search for a bar through all locked-items only 
		
			

 
Dim h as N
Dim oG2antt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Items as P
Dim var_Items1 as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Debug = .t.
var_Chart = oG2antt.Chart
	' var_Chart.PaneWidth(.f.) = 128
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 128"
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/31/2015}
oG2antt.BackColorAlternate = 16448250
oG2antt.ShowLockedItems = .t.
oG2antt.Columns.Add("Column")
var_Column = oG2antt.Columns.Add("Find")
	' var_Column.Def(17) = 1
	oG2antt.TemplateDef = "dim var_Column"
	oG2antt.TemplateDef = var_Column
	oG2antt.Template = "var_Column.Def(17) = 1"
	var_Column.Visible = .f.
	var_Column.FormatColumn = "int(value) = 0 ? `` : ` <fgcolor=FF0000><b>found here ` "
oG2antt.Chart.ColumnsFormatLevel = "1"
var_Items = oG2antt.Items
	' var_Items.LockedItemCount(0) = 3
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.LockedItemCount(0) = 3"
	h = var_Items.LockedItem(0,0)
	' var_Items.CellValue(h,0) = "locked-top 1"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,0) = `locked-top 1`"
	var_Items.AddBar(h,"Task",{01/04/2016},{01/08/2016},"T1")
	h = var_Items.LockedItem(0,1)
	' var_Items.CellValue(h,0) = "locked-top 2"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,0) = `locked-top 2`"
	var_Items.AddBar(h,"Task",{01/05/2016},{01/09/2016},"T2")
	h = var_Items.LockedItem(0,2)
	' var_Items.SelectItem(h) = .f.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.SelectItem(h) = False"
	' var_Items.ItemDivider(h) = 0
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemDivider(h) = 0"
	' var_Items.ItemHeight(h) = 2
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemHeight(h) = 2"
	var_Items.AddBar(var_Items.AddItem("un-locked item 1"),"Task",{01/04/2016},{01/08/2016},"T3")
	var_Items.AddBar(var_Items.AddItem("un-locked item 2"),"Task",{01/05/2016},{01/09/2016},"T4")
	' var_Items.LockedItemCount(1) = 3
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.LockedItemCount(1) = 3"
	h = var_Items.LockedItem(1,0)
	' var_Items.SelectItem(h) = .f.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.SelectItem(h) = False"
	' var_Items.ItemDivider(h) = 0
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemDivider(h) = 0"
	' var_Items.ItemHeight(h) = 2
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemHeight(h) = 2"
	h = var_Items.LockedItem(1,1)
	' var_Items.CellValue(h,0) = "locked-bottom 1"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,0) = `locked-bottom 1`"
	var_Items.AddBar(h,"Task",{01/04/2016},{01/08/2016},"T5")
	h = var_Items.LockedItem(1,2)
	' var_Items.CellValue(h,0) = "locked-bottom 2"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,0) = `locked-bottom 2`"
	var_Items.AddBar(h,"Task",{01/05/2016},{01/09/2016},"T6")
var_Items1 = oG2antt.Items
	h = var_Items1.FindBar("T2",-2)
	' var_Items1.ItemBar(h,var_Items1.FirstItemBar(h),33) = 255
	oG2antt.TemplateDef = "dim var_Items1,h"
	oG2antt.TemplateDef = var_Items1
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items1.ItemBar(h,FirstItemBar(h),33) = 255"
	' var_Items1.CellValue(h,1) = h
	oG2antt.TemplateDef = "dim var_Items1,h"
	oG2antt.TemplateDef = var_Items1
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items1.CellValue(h,1) = h"
oG2antt.EndUpdate()
 | 
  | 1757 |  Is it possible to search for a bar through all items ( including locked items ) 
		
			

 
Dim h as N
Dim oG2antt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Items as P
Dim var_Items1 as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Debug = .t.
var_Chart = oG2antt.Chart
	' var_Chart.PaneWidth(.f.) = 128
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 128"
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = {12/31/2015}
oG2antt.BackColorAlternate = 16448250
oG2antt.ShowLockedItems = .t.
oG2antt.Columns.Add("Column")
var_Column = oG2antt.Columns.Add("Find")
	' var_Column.Def(17) = 1
	oG2antt.TemplateDef = "dim var_Column"
	oG2antt.TemplateDef = var_Column
	oG2antt.Template = "var_Column.Def(17) = 1"
	var_Column.Visible = .f.
	var_Column.FormatColumn = "int(value) = 0 ? `` : ` <fgcolor=FF0000><b>found here ` "
oG2antt.Chart.ColumnsFormatLevel = "1"
var_Items = oG2antt.Items
	' var_Items.LockedItemCount(0) = 3
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.LockedItemCount(0) = 3"
	h = var_Items.LockedItem(0,0)
	' var_Items.CellValue(h,0) = "locked-top 1"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,0) = `locked-top 1`"
	var_Items.AddBar(h,"Task",{01/04/2016},{01/08/2016},"T1")
	h = var_Items.LockedItem(0,1)
	' var_Items.CellValue(h,0) = "locked-top 2"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,0) = `locked-top 2`"
	var_Items.AddBar(h,"Task",{01/05/2016},{01/09/2016},"T2")
	h = var_Items.LockedItem(0,2)
	' var_Items.SelectItem(h) = .f.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.SelectItem(h) = False"
	' var_Items.ItemDivider(h) = 0
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemDivider(h) = 0"
	' var_Items.ItemHeight(h) = 2
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemHeight(h) = 2"
	var_Items.AddBar(var_Items.AddItem("un-locked item 1"),"Task",{01/04/2016},{01/08/2016},"T3")
	var_Items.AddBar(var_Items.AddItem("un-locked item 2"),"Task",{01/05/2016},{01/09/2016},"T4")
	' var_Items.LockedItemCount(1) = 3
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.LockedItemCount(1) = 3"
	h = var_Items.LockedItem(1,0)
	' var_Items.SelectItem(h) = .f.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.SelectItem(h) = False"
	' var_Items.ItemDivider(h) = 0
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemDivider(h) = 0"
	' var_Items.ItemHeight(h) = 2
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemHeight(h) = 2"
	h = var_Items.LockedItem(1,1)
	' var_Items.CellValue(h,0) = "locked-bottom 1"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,0) = `locked-bottom 1`"
	var_Items.AddBar(h,"Task",{01/04/2016},{01/08/2016},"T5")
	h = var_Items.LockedItem(1,2)
	' var_Items.CellValue(h,0) = "locked-bottom 2"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,0) = `locked-bottom 2`"
	var_Items.AddBar(h,"Task",{01/05/2016},{01/09/2016},"T6")
var_Items1 = oG2antt.Items
	h = var_Items1.FindBar("T5",-1)
	' var_Items1.ItemBar(h,var_Items1.FirstItemBar(h),33) = 255
	oG2antt.TemplateDef = "dim var_Items1,h"
	oG2antt.TemplateDef = var_Items1
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items1.ItemBar(h,FirstItemBar(h),33) = 255"
	' var_Items1.CellValue(h,1) = h
	oG2antt.TemplateDef = "dim var_Items1,h"
	oG2antt.TemplateDef = var_Items1
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items1.CellValue(h,1) = h"
oG2antt.EndUpdate()
 | 
  | 1756 |  How do I clip/hide/align the bar's caption/text based on the bar's size/width/length 
		
			

 
Dim h as N
Dim oG2antt as P
Dim var_Bar as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Columns.Add("Clip")
oG2antt.ScrollBySingleLine = .t.
oG2antt.DrawGridLines = -2
var_Chart = oG2antt.Chart
	var_Chart.AllowResizeChart = 6 'exAllowResizeChartMiddle + exAllowResizeChartHeader
	var_Chart.DrawGridLines = -2
	var_Chart.FirstVisibleDate = {12/23/2000}
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 216
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 216"
	var_Bar = var_Chart.Bars.Item("Task")
		var_Bar.Pattern = 32
		var_Bar.Color = 10790052
		var_Bar.StartColor = 15790320
		var_Bar.EndColor = var_Bar.StartColor
		var_Bar.OverlaidType = 4611 'exOverlaidBarsIncludeCaption + exOverlaidBarsStackAutoArrange + exOverlaidBarsStack
		var_Bar.Height = 15
	var_Chart.MinUnitWidth = var_Chart.UnitWidth
var_Items = oG2antt.Items
	h = var_Items.AddItem("no clip, (0-2)")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/04/2001},"K1","no clip, right(<b>2</b>)")
	' var_Items.ItemBar(h,"K1",4) = 2
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K1`,4) = 2"
	var_Items.AddBar(h,"Task",{01/02/2001},{01/04/2001},"K2","no clip, center(<b>1</b>)")
	' var_Items.ItemBar(h,"K2",4) = 1
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K2`,4) = 1"
	var_Items.AddBar(h,"Task",{01/02/2001},{01/04/2001},"K3","no clip, left(<b>0</b>)")
	' var_Items.ItemBar(h,"K3",4) = 0
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K3`,4) = 0"
	h = var_Items.AddItem("clip, inside (3-5)")
	var_Items.AddBar(h,"Task",{12/28/2000},{01/08/2001},"K1","clip, inside, right(<b>5</b>)")
	' var_Items.ItemBar(h,"K1",4) = 5
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K1`,4) = 5"
	var_Items.AddBar(h,"Task",{12/28/2000},{01/08/2001},"K2","clip, inside, center(<b>4</b>)")
	' var_Items.ItemBar(h,"K2",4) = 4
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K2`,4) = 4"
	var_Items.AddBar(h,"Task",{12/28/2000},{01/08/2001},"K3","clip, inside, left(<b>3</b>)")
	' var_Items.ItemBar(h,"K3",4) = 3
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K3`,4) = 3"
	h = var_Items.AddItem("hide on min width, clip if not fit, inside (6-8)")
	var_Items.AddBar(h,"Task",{12/26/2000},{01/10/2001},"K1","hide on min width, clip if not fit, inside, right(<b>8</b>)")
	' var_Items.ItemBar(h,"K1",4) = 8
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K1`,4) = 8"
	var_Items.AddBar(h,"Task",{12/26/2000},{01/10/2001},"K2","hide on min width, clip if not fit, inside, center(<b>7</b>)")
	' var_Items.ItemBar(h,"K2",4) = 7
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K2`,4) = 7"
	var_Items.AddBar(h,"Task",{12/26/2000},{01/10/2001},"K3","hide on min width, clip if not fit, inside, left(<b>6</b>)")
	' var_Items.ItemBar(h,"K3",4) = 6
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K3`,4) = 6"
	h = var_Items.AddItem("hide if not fit, no clip, inside (9-11)")
	var_Items.AddBar(h,"Task",{12/28/2000},{01/08/2001},"K1","hide if not fit, no clip, inside, right(<b>11</b>)")
	' var_Items.ItemBar(h,"K1",4) = 11
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K1`,4) = 11"
	var_Items.AddBar(h,"Task",{12/28/2000},{01/08/2001},"K2","hide if not fit, no clip, center(<b>10</b>)")
	' var_Items.ItemBar(h,"K2",4) = 10
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K2`,4) = 10"
	var_Items.AddBar(h,"Task",{12/28/2000},{01/08/2001},"K3","hide if not fit, no clip, inside, left(<b>9</b>)")
	' var_Items.ItemBar(h,"K3",4) = 9
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K3`,4) = 9"
	h = var_Items.AddItem("no clip, inside, outside (12-14)")
	var_Items.AddBar(h,"Task",{12/28/2000},{01/08/2001},"K1","no clip, inside, outside, right(<b>14</b>)")
	' var_Items.ItemBar(h,"K1",4) = 14
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K1`,4) = 14"
	var_Items.AddBar(h,"Task",{12/28/2000},{01/08/2001},"K2","no clip, inside, outside, center(<b>13</b>)")
	' var_Items.ItemBar(h,"K2",4) = 13
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K2`,4) = 13"
	var_Items.AddBar(h,"Task",{12/28/2000},{01/08/2001},"K3","no clip, inside, outside, left(<b>12</b>)")
	' var_Items.ItemBar(h,"K3",4) = 12
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K3`,4) = 12"
	h = var_Items.AddItem("no clip, outside (16-18)")
	var_Items.AddBar(h,"Task",{12/30/2000},{01/06/2001},"K1","no clip, outside, right(<b>18</b>)")
	' var_Items.ItemBar(h,"K1",4) = 18
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K1`,4) = 18"
	var_Items.AddBar(h,"Task",{12/30/2000},{01/06/2001},"K2","no clip, outside, center(<b>17</b>)")
	' var_Items.ItemBar(h,"K2",4) = 17
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K2`,4) = 17"
	var_Items.AddBar(h,"Task",{12/30/2000},{01/06/2001},"K3","no clip, outside, left(<b>16</b>)")
	' var_Items.ItemBar(h,"K3",4) = 16
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`K3`,4) = 16"
oG2antt.EndUpdate()
 | 
  | 1755 |  Is there a way to prevent the automatic horizontal scrolling of the chart when moving or resizing a bar (method 2) 
		
			
' Occurs when the first visible date is changed.
function DateChange as v ()
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	oG2antt.Chart.FirstVisibleDate = {01/02/2001}
end function
Dim oG2antt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Columns.Add("Tasks")
var_Column = oG2antt.Columns.Add("Start")
	' var_Column.Def(18) = 1
	oG2antt.TemplateDef = "dim var_Column"
	oG2antt.TemplateDef = var_Column
	oG2antt.Template = "var_Column.Def(18) = 1"
	var_Column.Visible = .f.
	var_Column.Alignment = 0
var_Column1 = oG2antt.Columns.Add("End")
	' var_Column1.Def(18) = 2
	oG2antt.TemplateDef = "dim var_Column1"
	oG2antt.TemplateDef = var_Column1
	oG2antt.Template = "var_Column1.Def(18) = 2"
	var_Column1.Visible = .f.
	var_Column1.Alignment = 2
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/02/2001}
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 48
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 48"
	var_Chart.ColumnsFormatLevel = "1[bg=12500670]:52,|,2[bg=12500670]:52"
	var_Chart.ColumnsTransparent = 50
	var_Chart.ScrollBar = .f.
var_Items = oG2antt.Items
	var_Items.AllowCellValueToItemBar = .t.
	var_Items.AddBar(var_Items.AddItem("Task 1"),"Task",{01/03/2001},{01/07/2001})
	var_Items.AddBar(var_Items.AddItem("Task 2"),"Task",{01/04/2001},{01/08/2001})
oG2antt.EndUpdate()
 | 
  | 1754 |  Is there a way to prevent the automatic horizontal scrolling of the chart when moving or resizing a bar, including limiting the bars 
		
			
' Occurs when a bar is moving or resizing.
function BarResizing as v (Item  as  OLE::Exontrol.G2antt.1::HITEM, Key  as  A)
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		' var_Items.ItemBar(Item,Key,22) = {01/01/2001}
		oG2antt.TemplateDef = "dim var_Items,Item,Key"
		oG2antt.TemplateDef = var_Items
		oG2antt.TemplateDef = Item
		oG2antt.TemplateDef = Key
		oG2antt.Template = "var_Items.ItemBar(Item,Key,22) = #1/1/2001#"
		' var_Items.ItemBar(Item,Key,25) = {02/01/2001}
		oG2antt.TemplateDef = "dim var_Items,Item,Key"
		oG2antt.TemplateDef = var_Items
		oG2antt.TemplateDef = Item
		oG2antt.TemplateDef = Key
		oG2antt.Template = "var_Items.ItemBar(Item,Key,25) = #2/1/2001#"
end function
Dim oG2antt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Columns.Add("Tasks")
var_Column = oG2antt.Columns.Add("Start")
	' var_Column.Def(18) = 1
	oG2antt.TemplateDef = "dim var_Column"
	oG2antt.TemplateDef = var_Column
	oG2antt.Template = "var_Column.Def(18) = 1"
	var_Column.Visible = .f.
	var_Column.Alignment = 0
var_Column1 = oG2antt.Columns.Add("End")
	' var_Column1.Def(18) = 2
	oG2antt.TemplateDef = "dim var_Column1"
	oG2antt.TemplateDef = var_Column1
	oG2antt.Template = "var_Column1.Def(18) = 2"
	var_Column1.Visible = .f.
	var_Column1.Alignment = 2
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/02/2001}
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 48
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 48"
	var_Chart.ColumnsFormatLevel = "1[bg=12500670]:52,|,2[bg=12500670]:52"
	var_Chart.ColumnsTransparent = 50
	' var_Chart.ScrollRange(0) = {01/01/2001}
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.ScrollRange(0) = #1/1/2001#"
	' var_Chart.ScrollRange(1) = {01/31/2001}
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.ScrollRange(1) = #1/31/2001#"
var_Items = oG2antt.Items
	var_Items.AllowCellValueToItemBar = .t.
	var_Items.AddBar(var_Items.AddItem("Task 1"),"Task",{01/03/2001},{01/07/2001})
	var_Items.AddBar(var_Items.AddItem("Task 2"),"Task",{01/04/2001},{01/08/2001})
oG2antt.EndUpdate()
 | 
  | 1753 |  Is there a way to prevent the automatic horizontal scrolling of the chart when moving or resizing a bar (method 1) 
		
			
Dim oG2antt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Columns.Add("Tasks")
var_Column = oG2antt.Columns.Add("Start")
	' var_Column.Def(18) = 1
	oG2antt.TemplateDef = "dim var_Column"
	oG2antt.TemplateDef = var_Column
	oG2antt.Template = "var_Column.Def(18) = 1"
	var_Column.Visible = .f.
	var_Column.Alignment = 0
var_Column1 = oG2antt.Columns.Add("End")
	' var_Column1.Def(18) = 2
	oG2antt.TemplateDef = "dim var_Column1"
	oG2antt.TemplateDef = var_Column1
	oG2antt.Template = "var_Column1.Def(18) = 2"
	var_Column1.Visible = .f.
	var_Column1.Alignment = 2
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/02/2001}
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 48
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 48"
	var_Chart.ColumnsFormatLevel = "1[bg=12500670]:52,|,2[bg=12500670]:52"
	var_Chart.ColumnsTransparent = 50
	' var_Chart.ScrollRange(0) = {01/01/2001}
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.ScrollRange(0) = #1/1/2001#"
	' var_Chart.ScrollRange(1) = {01/31/2001}
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.ScrollRange(1) = #1/31/2001#"
var_Items = oG2antt.Items
	var_Items.AllowCellValueToItemBar = .t.
	var_Items.AddBar(var_Items.AddItem("Task 1"),"Task",{01/03/2001},{01/07/2001})
	var_Items.AddBar(var_Items.AddItem("Task 2"),"Task",{01/04/2001},{01/08/2001})
oG2antt.EndUpdate()
 | 
  | 1752 |  Is it possible to have "Preview Window" as a "Modal Window or 'always-on-top window'" 
		
			
Dim h1 as N
Dim h2 as N
Dim oG2antt as P
Dim var_Items as P
Dim var_Print as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Columns.Add("Task")
oG2antt.Chart.FirstVisibleDate = {01/01/2001}
var_Items = oG2antt.Items
	h1 = var_Items.AddItem("Task 1")
	var_Items.AddBar(h1,"Task",{01/02/2001},{01/04/2001},"K1")
	h2 = var_Items.AddItem("Task 2")
	var_Items.AddBar(h2,"Task",{01/05/2001},{01/07/2001},"K2")
	var_Items.AddLink("L1",h1,"K1",h2,"K2")
	' var_Items.Link("L1",6) = 0
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.Link(`L1`,6) = 0"
oG2antt.EndUpdate()
var_Print = OLE.Create("Exontrol.Print")
	? var_Print.Version 
	var_Print.Foreground = -1
	var_Print.PrintExt = oG2antt
	var_Print.Preview()
 | 
  | 1751 |  The week number is not correct (wrong). What can I do 
		
			

 
Dim oG2antt as P
Dim var_Chart as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
var_Chart = oG2antt.Chart
	var_Chart.FirstWeekDay = var_Chart.LocFirstWeekDay
	var_Chart.MonthNames = var_Chart.LocMonthNames
	var_Chart.WeekDays = var_Chart.LocWeekDays
	var_Chart.AMPM = var_Chart.LocAMPM
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 0
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 0"
	var_Chart.UnitScale = 256
	var_Chart.UnitWidth = 32
	var_Chart.FirstVisibleDate = {01/01/2016}
	var_Chart.AdjustLevelsToBase = .t.
	var_Chart.WeekNumberAs = 0
	var_Chart.ShowNonworkingDates = .f.
	var_Chart.ScrollTo(var_Chart.FirstVisibleDate,1)
 | 
  | 1750 |  When the user zooms with the mouse, the chart automatically switches the unit scale - ideally I'd like to replicate this so I can switch the unitscale at the same "zoom levels" that the mouse zooming does - is this possible 
		
			
' Occurs after the chart has been changed.
function ChartEndChanging as v (Operation  as  OLE::Exontrol.G2antt.1::BarOperationEnum)
	Dim var_Chart as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Chart = oG2antt.Chart
		? "FirstVisibleDate" 
		? var_Chart.FirstVisibleDate 
		? "UnitScale" 
		? var_Chart.UnitScale 
		? "UnitWidth" 
		? var_Chart.UnitWidth 
end function
Dim oG2antt as P
Dim var_Chart as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
var_Chart = oG2antt.Chart
	var_Chart.LevelCount = 3
	var_Chart.AllowResizeChart = 262 'exAllowChangeUnitScale + exAllowResizeChartMiddle + exAllowResizeChartHeader
	' var_Chart.PaneWidth(.f.) = 0
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 0"
	var_Chart.MarkTodayColor = var_Chart.BackColor
oG2antt.EndUpdate()
 | 
  | 1749 |  The first week number is not correctly assigned. What can I do 
		
			

 
Dim oG2antt as P
Dim var_Chart as P
Dim var_Level as local
oG2antt = topparent:CONTROL_ACTIVEX1.activex
var_Chart = oG2antt.Chart
	' var_Chart.PaneWidth(.f.) = 0
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 0"
	var_Chart.FirstVisibleDate = {01/01/2016}
	var_Chart.LevelCount = 2
	var_Chart.FirstWeekDay = 1
	var_Chart.UnitScale = 256
	var_Chart.ScrollTo(var_Chart.FirstVisibleDate,1)
	var_Chart.DrawGridLines = -1
	var_Chart.AdjustLevelsToBase = .t.
	' var_Chart.Level(0).Label = "<c><%mmmm%>"
	var_Level = var_Chart.Level(0)
	oG2antt.TemplateDef = "dim var_Level"
	oG2antt.TemplateDef = var_Level
	oG2antt.Template = "var_Level.Label = `<c><%mmmm%>`"
 | 
  | 1748 | How can I display the +/- expand - collapse buttons, a bit larger 
		
			

 
Dim h as N
Dim oG2antt as P
Dim var_Appearance as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
var_Appearance = oG2antt.VisualAppearance
	var_Appearance.Add(3,"c:\exontrol\images\normal.ebn")
	var_Appearance.Add(4,"c:\exontrol\images\pushed.ebn")
	var_Appearance.Add(1,"CP:3 -4 -4 4 4")
	var_Appearance.Add(2,"CP:4 -4 -4 4 4")
oG2antt.LinesAtRoot = 1
oG2antt.HasButtons = 4
oG2antt.Template = "HasButtonsCustom(0) = 16777216" // oG2antt.HasButtonsCustom(.f.) = 16777216
oG2antt.Template = "HasButtonsCustom(1) = 33554432" // oG2antt.HasButtonsCustom(.t.) = 33554432
oG2antt.Columns.Add("Column")
var_Items = oG2antt.Items
	h = var_Items.AddItem("Root 1")
	var_Items.InsertItem(h,,"Child 1")
	var_Items.InsertItem(h,,"Child 2")
	' var_Items.ExpandItem(h) = .t.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ExpandItem(h) = True"
	h = var_Items.AddItem("Root 2")
	var_Items.InsertItem(h,,"Child")
oG2antt.EndUpdate()
 | 
  | 1747 |  Is there any option to control where I can drop the items when using the AutoDrag property 
		
			
' Occurs when the user drags the item between InsertA and InsertB as child of NewParent.
function AllowAutoDrag as v (Item  as  OLE::Exontrol.G2antt.1::HITEM, NewParent  as  OLE::Exontrol.G2antt.1::HITEM, InsertA  as  OLE::Exontrol.G2antt.1::HITEM, InsertB  as  OLE::Exontrol.G2antt.1::HITEM, Cancel  as  L)
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		? "NewParent" 
		? var_Items.CellCaption(NewParent,0) 
		? "After" 
		? var_Items.CellCaption(InsertA,0) 
		? "Before" 
		? var_Items.CellCaption(InsertB,0) 
	Cancel = .t.
end function
Dim h as N
Dim h1 as N
Dim h2 as N
Dim h3 as N
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.AutoDrag = 3
oG2antt.LinesAtRoot = 0
oG2antt.HasLines = 2
oG2antt.ShowFocusRect = .f.
oG2antt.Columns.Add("Task")
var_Chart = oG2antt.Chart
	var_Chart.ShowNonworkingDates = .f.
	var_Chart.FirstVisibleDate = {12/29/2000}
	' var_Chart.PaneWidth(.f.) = 96
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 96"
	var_Chart.LevelCount = 2
var_Items = oG2antt.Items
	h = var_Items.AddItem("Group 1")
	' var_Items.ItemDivider(h) = 0
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemDivider(h) = 0"
	' var_Items.ItemBold(h) = .t.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBold(h) = True"
	h1 = var_Items.InsertItem(h,,"Task 1")
	var_Items.AddBar(h1,"Task",{01/02/2001},{01/04/2001},"K1")
	h2 = var_Items.InsertItem(h,,"Task 2")
	var_Items.AddBar(h2,"Task",{01/05/2001},{01/07/2001},"K2")
	var_Items.AddLink("L1",h1,"K1",h2,"K2")
	' var_Items.Link("L1",12) = "L1"
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.Link(`L1`,12) = `L1`"
	h3 = var_Items.InsertItem(h,,"Task 3")
	var_Items.AddBar(h3,"Task",{01/08/2001},{01/10/2001},"K3")
	var_Items.AddLink("L2",h2,"K2",h3,"K3")
	' var_Items.Link("L2",12) = "L2"
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.Link(`L2`,12) = `L2`"
	' var_Items.ExpandItem(h) = .t.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ExpandItem(h) = True"
	h = var_Items.AddItem("Group 2")
	' var_Items.ItemBold(h) = .t.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBold(h) = True"
	' var_Items.ItemDivider(h) = 0
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemDivider(h) = 0"
oG2antt.EndUpdate()
 | 
  | 1746 |  The column (chart section ) overlaps the bars, when using the ColumnsFormatLevel property. How can I prevent that 
		
			

 
Dim oG2antt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Columns.Add("Tasks")
var_Column = oG2antt.Columns.Add("Start")
	' var_Column.Def(18) = 1
	oG2antt.TemplateDef = "dim var_Column"
	oG2antt.TemplateDef = var_Column
	oG2antt.Template = "var_Column.Def(18) = 1"
	var_Column.Visible = .f.
	var_Column.Alignment = 0
var_Column1 = oG2antt.Columns.Add("End")
	' var_Column1.Def(18) = 2
	oG2antt.TemplateDef = "dim var_Column1"
	oG2antt.TemplateDef = var_Column1
	oG2antt.Template = "var_Column1.Def(18) = 2"
	var_Column1.Visible = .f.
	var_Column1.Alignment = 2
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/02/2001}
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 48
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 48"
	var_Chart.ColumnsFormatLevel = "1[bg=12500670]:52,|,2[bg=12500670]:52"
	var_Chart.ColumnsTransparent = 50
var_Items = oG2antt.Items
	var_Items.AllowCellValueToItemBar = .t.
	var_Items.AddBar(var_Items.AddItem("Task 1"),"Task",{01/03/2001},{01/07/2001})
	var_Items.AddBar(var_Items.AddItem("Task 2"),"Task",{01/04/2001},{01/08/2001})
oG2antt.EndUpdate()
 | 
  | 1745 |  How do I show the column ( chart section ) with a different background color, when using the ColumnsFormatLevel property (method 2) 
		
			

 
Dim oG2antt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Columns.Add("Tasks")
var_Column = oG2antt.Columns.Add("Start")
	' var_Column.Def(18) = 1
	oG2antt.TemplateDef = "dim var_Column"
	oG2antt.TemplateDef = var_Column
	oG2antt.Template = "var_Column.Def(18) = 1"
	var_Column.Visible = .f.
	var_Column.Alignment = 0
var_Column1 = oG2antt.Columns.Add("End")
	' var_Column1.Def(18) = 2
	oG2antt.TemplateDef = "dim var_Column1"
	oG2antt.TemplateDef = var_Column1
	oG2antt.Template = "var_Column1.Def(18) = 2"
	var_Column1.Visible = .f.
	var_Column1.Alignment = 2
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/02/2001}
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 48
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 48"
	var_Chart.ColumnsFormatLevel = "1[bg=12500670]:52,|,2[bg=12500670]:52"
var_Items = oG2antt.Items
	var_Items.AllowCellValueToItemBar = .t.
	var_Items.AddBar(var_Items.AddItem("Task 1"),"Task",{01/03/2001},{01/07/2001})
	var_Items.AddBar(var_Items.AddItem("Task 2"),"Task",{01/04/2001},{01/08/2001})
oG2antt.EndUpdate()
 | 
  | 1744 |  How do I show the column ( chart section ) with a different background color, when using the ColumnsFormatLevel property (method 1) 
		
			

 
Dim oG2antt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Columns.Add("Tasks")
var_Column = oG2antt.Columns.Add("Start")
	' var_Column.Def(18) = 1
	oG2antt.TemplateDef = "dim var_Column"
	oG2antt.TemplateDef = var_Column
	oG2antt.Template = "var_Column.Def(18) = 1"
	var_Column.Visible = .f.
	var_Column.Alignment = 0
	' var_Column.Def(4) = 12500670
	oG2antt.TemplateDef = "dim var_Column"
	oG2antt.TemplateDef = var_Column
	oG2antt.Template = "var_Column.Def(4) = 12500670"
var_Column1 = oG2antt.Columns.Add("End")
	' var_Column1.Def(18) = 2
	oG2antt.TemplateDef = "dim var_Column1"
	oG2antt.TemplateDef = var_Column1
	oG2antt.Template = "var_Column1.Def(18) = 2"
	var_Column1.Visible = .f.
	var_Column1.Alignment = 2
	' var_Column1.Def(4) = 12500670
	oG2antt.TemplateDef = "dim var_Column1"
	oG2antt.TemplateDef = var_Column1
	oG2antt.Template = "var_Column1.Def(4) = 12500670"
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {12/31/2000}
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 48
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 48"
	var_Chart.ColumnsFormatLevel = "1:52,|,2:52"
var_Items = oG2antt.Items
	var_Items.AllowCellValueToItemBar = .t.
	var_Items.AddBar(var_Items.AddItem("Task 1"),"Task",{01/03/2001},{01/07/2001})
	var_Items.AddBar(var_Items.AddItem("Task 2"),"Task",{01/04/2001},{01/08/2001})
oG2antt.EndUpdate()
 | 
  | 1743 |  How can I display the control's content on an single A3 paper size, when using PDF format 
		
			

 
Dim h as N
Dim oG2antt as P
Dim var_Bar as P
Dim var_Chart as P
Dim var_CopyTo as 
Dim var_Items as P
Dim var_Note as P
Dim var_Note1 as P
Dim var_Notes as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Columns.Add("Task")
oG2antt.AntiAliasing = .t.
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {12/24/2000}
	' var_Chart.PaneWidth(.f.) = 96
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 96"
	var_Chart.LevelCount = 2
	var_Chart.UnitScale = 4096
	var_Bar = var_Chart.Bars.Item("Task")
		var_Bar.Pattern = 1
		var_Bar.Color = 0
		var_Bar.Height = 16
var_Items = oG2antt.Items
	h = var_Items.AddItem("Task 1")
	var_Items.AddBar(h,"Task",{12/25/2000},{01/05/2001},"1","<fgcolor=FFFFFF>Center")
	' var_Items.ItemBar(h,"1",44) = "left"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`1`,44) = `left`"
	' var_Items.ItemBar(h,"1",45) = 16
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`1`,45) = 16"
	h = var_Items.AddItem("Task 2")
	var_Items.AddBar(h,"Task",{01/05/2001},{01/16/2001},"1","<fgcolor=FFFFFF>Center")
	h = var_Items.AddItem("Task 3")
	var_Items.AddBar(h,"Task",{01/16/2001},{01/26/2001},"2","Center")
	' var_Items.ItemBar(h,"2",44) = "right"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`2`,44) = `right`"
	' var_Items.ItemBar(h,"2",45) = 18
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`2`,45) = 18"
var_Notes = oG2antt.Chart.Notes
	var_Note = var_Notes.Add("1S",oG2antt.Items.ItemByIndex(1),"1","<%m3%>-<%d%>")
		' var_Note.PartShadow(1) = .f.
		oG2antt.TemplateDef = "dim var_Note"
		oG2antt.TemplateDef = var_Note
		oG2antt.Template = "var_Note.PartShadow(1) = False"
		' var_Note.PartHOffset(1) = -16
		oG2antt.TemplateDef = "dim var_Note"
		oG2antt.TemplateDef = var_Note
		oG2antt.Template = "var_Note.PartHOffset(1) = -16"
		' var_Note.PartVOffset(1) = 4
		oG2antt.TemplateDef = "dim var_Note"
		oG2antt.TemplateDef = var_Note
		oG2antt.Template = "var_Note.PartVOffset(1) = 4"
	var_Note1 = var_Notes.Add("1F",oG2antt.Items.ItemByIndex(1),"1","<%m3%>-<%d%>")
		var_Note1.RelativePosition = 1
		' var_Note1.PartShadow(1) = .f.
		oG2antt.TemplateDef = "dim var_Note1"
		oG2antt.TemplateDef = var_Note1
		oG2antt.Template = "var_Note1.PartShadow(1) = False"
		' var_Note1.PartHOffset(1) = 16
		oG2antt.TemplateDef = "dim var_Note1"
		oG2antt.TemplateDef = var_Note1
		oG2antt.Template = "var_Note1.PartHOffset(1) = 16"
		' var_Note1.PartVOffset(1) = -4
		oG2antt.TemplateDef = "dim var_Note1"
		oG2antt.TemplateDef = var_Note1
		oG2antt.Template = "var_Note1.PartVOffset(1) = -4"
var_CopyTo = oG2antt.CopyTo("C:\Temp\Preview.pdf|11.69 in x 16.53 in||single")
? "Look for C:\Temp\Preview.pd file." 
oG2antt.EndUpdate()
 | 
  | 1742 |  How can I display the control's content on an A3 paper size, when using PDF format 
		
			

 
Dim h as N
Dim oG2antt as P
Dim var_Bar as P
Dim var_Chart as P
Dim var_CopyTo as 
Dim var_Items as P
Dim var_Note as P
Dim var_Note1 as P
Dim var_Notes as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Columns.Add("Task")
oG2antt.AntiAliasing = .t.
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {12/24/2000}
	' var_Chart.PaneWidth(.f.) = 96
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 96"
	var_Chart.LevelCount = 2
	var_Chart.UnitScale = 4096
	var_Bar = var_Chart.Bars.Item("Task")
		var_Bar.Pattern = 1
		var_Bar.Color = 0
		var_Bar.Height = 16
var_Items = oG2antt.Items
	h = var_Items.AddItem("Task 1")
	var_Items.AddBar(h,"Task",{12/25/2000},{01/05/2001},"1","<fgcolor=FFFFFF>Center")
	' var_Items.ItemBar(h,"1",44) = "left"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`1`,44) = `left`"
	' var_Items.ItemBar(h,"1",45) = 16
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`1`,45) = 16"
	h = var_Items.AddItem("Task 2")
	var_Items.AddBar(h,"Task",{01/05/2001},{01/16/2001},"1","<fgcolor=FFFFFF>Center")
	h = var_Items.AddItem("Task 3")
	var_Items.AddBar(h,"Task",{01/16/2001},{01/26/2001},"2","Center")
	' var_Items.ItemBar(h,"2",44) = "right"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`2`,44) = `right`"
	' var_Items.ItemBar(h,"2",45) = 18
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`2`,45) = 18"
var_Notes = oG2antt.Chart.Notes
	var_Note = var_Notes.Add("1S",oG2antt.Items.ItemByIndex(1),"1","<%m3%>-<%d%>")
		' var_Note.PartShadow(1) = .f.
		oG2antt.TemplateDef = "dim var_Note"
		oG2antt.TemplateDef = var_Note
		oG2antt.Template = "var_Note.PartShadow(1) = False"
		' var_Note.PartHOffset(1) = -16
		oG2antt.TemplateDef = "dim var_Note"
		oG2antt.TemplateDef = var_Note
		oG2antt.Template = "var_Note.PartHOffset(1) = -16"
		' var_Note.PartVOffset(1) = 4
		oG2antt.TemplateDef = "dim var_Note"
		oG2antt.TemplateDef = var_Note
		oG2antt.Template = "var_Note.PartVOffset(1) = 4"
	var_Note1 = var_Notes.Add("1F",oG2antt.Items.ItemByIndex(1),"1","<%m3%>-<%d%>")
		var_Note1.RelativePosition = 1
		' var_Note1.PartShadow(1) = .f.
		oG2antt.TemplateDef = "dim var_Note1"
		oG2antt.TemplateDef = var_Note1
		oG2antt.Template = "var_Note1.PartShadow(1) = False"
		' var_Note1.PartHOffset(1) = 16
		oG2antt.TemplateDef = "dim var_Note1"
		oG2antt.TemplateDef = var_Note1
		oG2antt.Template = "var_Note1.PartHOffset(1) = 16"
		' var_Note1.PartVOffset(1) = -4
		oG2antt.TemplateDef = "dim var_Note1"
		oG2antt.TemplateDef = var_Note1
		oG2antt.Template = "var_Note1.PartVOffset(1) = -4"
var_CopyTo = oG2antt.CopyTo("C:\Temp\Preview.pdf|11.69 in x 16.53 in")
? "Look for C:\Temp\Preview.pd file." 
oG2antt.EndUpdate()
 | 
  | 1741 |  How can I specify the grouping strategy, ie numbers from 1 to 5 are given the value (1-5) and grouping is done on this new value 
		
			

 
' Occurs after a new Group Item has been inserted to Items collection.
function AddGroupItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM)
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		' var_Items.ItemBold(Item) = .t.
		oG2antt.TemplateDef = "dim var_Items,Item"
		oG2antt.TemplateDef = var_Items
		oG2antt.TemplateDef = Item
		oG2antt.Template = "var_Items.ItemBold(Item) = True"
		var_Items.AddBar(Item,"Summary",var_Items.CellValue(Item,1),var_Items.CellValue(Item,2))
		var_Items.DefineSummaryBars(Item,"",-3,"")
end function
Dim oG2antt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_Columns as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.AllowGroupBy = .t.
oG2antt.SortBarVisible = .t.
oG2antt.MarkSearchColumn = .f.
var_Columns = oG2antt.Columns
	var_Columns.Add("Tasks")
	var_Column = var_Columns.Add("Start")
		' var_Column.Def(18) = 1
		oG2antt.TemplateDef = "dim var_Column"
		oG2antt.TemplateDef = var_Column
		oG2antt.Template = "var_Column.Def(18) = 1"
		var_Column.AllowGroupBy = .f.
	var_Column1 = var_Columns.Add("End")
		' var_Column1.Def(18) = 2
		oG2antt.TemplateDef = "dim var_Column1"
		oG2antt.TemplateDef = var_Column1
		oG2antt.Template = "var_Column1.Def(18) = 2"
		var_Column1.AllowGroupBy = .f.
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {09/20/2006}
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 256
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(0) = 256"
var_Items = oG2antt.Items
	var_Items.AllowCellValueToItemBar = .t.
	var_Items.AddBar(var_Items.AddItem("1"),"Task",{09/21/2006},{09/27/2006})
	var_Items.AddBar(var_Items.AddItem("1"),"Task",{09/22/2006},{09/28/2006})
	var_Items.AddBar(var_Items.AddItem("2"),"Task",{09/22/2006},{09/28/2006})
	var_Items.AddBar(var_Items.AddItem("2"),"Task",{09/23/2006},{09/29/2006})
	var_Items.AddBar(var_Items.AddItem("3"),"Task",{09/25/2006},{09/29/2006})
	var_Items.AddBar(var_Items.AddItem("3"),"Task",{09/26/2006},{09/30/2006})
var_Column2 = oG2antt.Columns.Add("Tasks - Group")
	var_Column2.Visible = .f.
	var_Column2.FormatColumn = "%0 in (1,2) ? `1 - 2` : `3 -`"
	var_Column2.SortOrder = 1
oG2antt.EndUpdate()
 | 
  | 1740 |  How can I filter the chart and its content, not the items section 
		
			

 
' Fired when right mouse button is clicked
function RClick as v ()
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	oG2antt.Columns.Item("Start").ShowFilter("-1,-1,128,128")
end function
Dim oG2antt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Columns as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.SortBarVisible = .t.
oG2antt.MarkSearchColumn = .f.
var_Columns = oG2antt.Columns
	var_Columns.Add("Tasks")
	var_Column = var_Columns.Add("Start")
		' var_Column.Def(18) = 1
		oG2antt.TemplateDef = "dim var_Column"
		oG2antt.TemplateDef = var_Column
		oG2antt.Template = "var_Column.Def(18) = 1"
		var_Column.DisplayFilterDate = .t.
		var_Column.DisplayFilterPattern = .f.
		var_Column.FilterList = 8448 'exShowExclude + exShowCheckBox
		var_Column.Visible = .f.
	var_Column1 = var_Columns.Add("End")
		' var_Column1.Def(18) = 2
		oG2antt.TemplateDef = "dim var_Column1"
		oG2antt.TemplateDef = var_Column1
		oG2antt.Template = "var_Column1.Def(18) = 2"
		var_Column1.DisplayFilterDate = .t.
		var_Column1.DisplayFilterPattern = .f.
		var_Column1.Visible = .f.
		var_Column1.FilterList = 8448 'exShowExclude + exShowCheckBox
		var_Column1.Visible = .f.
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {09/20/2006}
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 128
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(0) = 128"
var_Items = oG2antt.Items
	var_Items.AllowCellValueToItemBar = .t.
	var_Items.AddBar(var_Items.AddItem("Task 1"),"Task",{09/21/2006},{09/27/2006})
	var_Items.AddBar(var_Items.AddItem("Task 2"),"Task",{09/22/2006},{09/28/2006})
	var_Items.AddBar(var_Items.AddItem("Task 3"),"Task",{09/22/2006},{09/28/2006})
	var_Items.AddBar(var_Items.AddItem("Task 4"),"Task",{09/23/2006},{09/29/2006})
	var_Items.AddBar(var_Items.AddItem("Task 5"),"Task",{09/25/2006},{09/29/2006})
	var_Items.AddBar(var_Items.AddItem("Task 6"),"Task",{09/26/2006},{09/30/2006})
oG2antt.EndUpdate()
 | 
  | 1739 |  How do I enable the Group-By feature 
		
			

 
' Occurs after a new Group Item has been inserted to Items collection.
function AddGroupItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM)
	Dim var_Chart as local
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		' var_Items.ItemBackColor(Item) = 15790320
		oG2antt.TemplateDef = "dim var_Items,Item"
		oG2antt.TemplateDef = var_Items
		oG2antt.TemplateDef = Item
		oG2antt.Template = "var_Items.ItemBackColor(Item) = 15790320"
		' oG2antt.Chart.ItemBackColor(Item) = 15790320
		var_Chart = oG2antt.Chart
		oG2antt.TemplateDef = "dim var_Chart"
		oG2antt.TemplateDef = var_Chart
		oG2antt.Template = "Me.Chart.ItemBackColor(Item) = 15790320"
		' var_Items.ItemDividerLine(Item) = 0
		oG2antt.TemplateDef = "dim var_Items,Item"
		oG2antt.TemplateDef = var_Items
		oG2antt.TemplateDef = Item
		oG2antt.Template = "var_Items.ItemDividerLine(Item) = 0"
		var_Items.AddBar(Item,"Summary",var_Items.CellValue(Item,1),var_Items.CellValue(Item,2))
		var_Items.DefineSummaryBars(Item,"",-3,"")
end function
Dim oG2antt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Columns as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.AllowGroupBy = .t.
oG2antt.SortBarVisible = .t.
oG2antt.MarkSearchColumn = .f.
var_Columns = oG2antt.Columns
	var_Columns.Add("Tasks")
	var_Column = var_Columns.Add("Start")
		' var_Column.Def(18) = 1
		oG2antt.TemplateDef = "dim var_Column"
		oG2antt.TemplateDef = var_Column
		oG2antt.Template = "var_Column.Def(18) = 1"
		var_Column.AllowGroupBy = .f.
	var_Column1 = var_Columns.Add("End")
		' var_Column1.Def(18) = 2
		oG2antt.TemplateDef = "dim var_Column1"
		oG2antt.TemplateDef = var_Column1
		oG2antt.Template = "var_Column1.Def(18) = 2"
		var_Column1.AllowGroupBy = .f.
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {09/20/2006}
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 256
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(0) = 256"
var_Items = oG2antt.Items
	var_Items.AllowCellValueToItemBar = .t.
	var_Items.AddBar(var_Items.AddItem("Task 1"),"Task",{09/21/2006},{09/27/2006})
	var_Items.AddBar(var_Items.AddItem("Task 1"),"Task",{09/22/2006},{09/28/2006})
	var_Items.AddBar(var_Items.AddItem("Task 2"),"Task",{09/22/2006},{09/28/2006})
	var_Items.AddBar(var_Items.AddItem("Task 2"),"Task",{09/23/2006},{09/29/2006})
	var_Items.AddBar(var_Items.AddItem("Task 3"),"Task",{09/25/2006},{09/29/2006})
	var_Items.AddBar(var_Items.AddItem("Task 3"),"Task",{09/26/2006},{09/30/2006})
oG2antt.Columns.Item(0).SortOrder = 1
oG2antt.EndUpdate()
 | 
  | 1738 |  Is there any method to know number/length/count/duration of working days in a bar ( excluding non-working days)  
		
			

 
' Fired after a new item has been selected.
function SelectionChanged as v ()
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		? var_Items.CellCaption(var_Items.FocusItem,0) 
		? var_Items.ItemBar(var_Items.FocusItem,"",258) 
end function
Dim h as N
Dim oG2antt as P
Dim var_Bar as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.SelBackColor = 16760462
oG2antt.SelForeColor = 0
var_Chart = oG2antt.Chart
	' var_Chart.PaneWidth(.f.) = 96
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 96"
	var_Chart.FirstVisibleDate = {01/01/2002}
	var_Bar = var_Chart.Bars.Add("Task:Split")
		var_Bar.Shortcut = "Task"
		' var_Bar.Def(3) = "<%=%258%><font ;6><off 3>w/units"
		oG2antt.TemplateDef = "dim var_Bar"
		oG2antt.TemplateDef = var_Bar
		oG2antt.Template = "var_Bar.Def(3) = `<%=%258%><font ;6><off 3>w/units`"
		' var_Bar.Def(4) = 18
		oG2antt.TemplateDef = "dim var_Bar"
		oG2antt.TemplateDef = var_Bar
		oG2antt.Template = "var_Bar.Def(4) = 18"
	var_Chart.SelBackColor = oG2antt.SelBackColor
oG2antt.Columns.Add("Task")
var_Items = oG2antt.Items
	h = var_Items.AddItem("Task A")
	var_Items.AddBar(h,"Task",{01/02/2002},{01/09/2002})
	h = var_Items.AddItem("Task B")
	var_Items.AddBar(h,"Task",{01/03/2002},{01/08/2002})
	' var_Items.SelectItem(h) = .t.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.SelectItem(h) = True"
	h = var_Items.AddItem("Task C")
	var_Items.AddBar(h,"Task",{01/04/2002},{01/05/2002})
oG2antt.EndUpdate()
 | 
  | 1737 |  How do i verify weather specified unit is Nonworking Working Unit 
		
			

 
' Occurs when the user moves the mouse.
function MouseMove as v (Button  as  N, Shift  as  N, X  as  OLE::Exontrol.G2antt.1::OLE_XPOS_PIXELS, Y  as  OLE::Exontrol.G2antt.1::OLE_YPOS_PIXELS)
	Dim d as 
	Dim h as N
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	h = oG2antt.ItemFromPoint(-1,-1,c,hit)
	d = oG2antt.Chart.DateFromPoint(-1,-1)
	? d 
	? oG2antt.Chart.IsNonworkingDate(d,h) 
end function
Dim h as N
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Columns.Add("NonWorking")
var_Chart = oG2antt.Chart
	var_Chart.FirstWeekDay = 1
	var_Chart.FirstVisibleDate = {01/24/2008}
	' var_Chart.PaneWidth(.f.) = 64
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 64"
	var_Chart.LevelCount = 2
var_Items = oG2antt.Items
	h = var_Items.AddItem("Default")
	h = var_Items.AddItem("January")
	' var_Items.ItemNonworkingUnits(h,.f.) = "month(value) = 1"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemNonworkingUnits(h,False) = `month(value) = 1`"
	h = var_Items.AddItem("February, Saturday, Sunday")
	' var_Items.ItemNonworkingUnits(h,.f.) = "month(value) = 2 or (weekday(value) = 0 or weekday(value) = 6)"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemNonworkingUnits(h,False) = `month(value) = 2 or (weekday(value) = 0 or weekday(value) = 6)`"
	h = var_Items.AddItem("Sunday")
	' var_Items.ItemNonworkingUnits(h,.f.) = "weekday(value) = 0"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemNonworkingUnits(h,False) = `weekday(value) = 0`"
oG2antt.EndUpdate()
 | 
  | 1736 |  How can I specify the bar's caption to be caption from a column/cell 
		
			

 
' Occurs when the user changes the cell's content.
function Change as v (Item  as  OLE::Exontrol.G2antt.1::HITEM, ColIndex  as  N, NewValue  as  A)
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	oG2antt.Refresh()
end function
Dim oG2antt as P
Dim var_Bar as P
Dim var_Chart as P
Dim var_Editor as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {01/01/2001}
	' var_Chart.PaneWidth(.f.) = 64
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 64"
	var_Bar = var_Chart.Bars.Item("Task")
		' var_Bar.Def(3) = "<fgcolor=808080><%=%C0%>"
		oG2antt.TemplateDef = "dim var_Bar"
		oG2antt.TemplateDef = var_Bar
		oG2antt.Template = "var_Bar.Def(3) = `<fgcolor=808080><%=%C0%>`"
		' var_Bar.Def(4) = 18
		oG2antt.TemplateDef = "dim var_Bar"
		oG2antt.TemplateDef = var_Bar
		oG2antt.Template = "var_Bar.Def(4) = 18"
var_Editor = oG2antt.Columns.Add("Task").Editor
	var_Editor.EditType = 3
	var_Editor.AddItem(1,"Aka")
	var_Editor.AddItem(2,"Baka")
	var_Editor.AddItem(3,"Taka")
var_Items = oG2antt.Items
	var_Items.AddBar(var_Items.AddItem(1),"Task",{01/02/2001},{01/05/2001})
	var_Items.AddBar(var_Items.AddItem(2),"Task",{01/03/2001},{01/06/2001})
	var_Items.AddBar(var_Items.AddItem(3),"Task",{01/04/2001},{01/07/2001})
oG2antt.EndUpdate()
 | 
  | 1735 |  The histogram values displayed on the chart are using 2 decimal places. Can this be formated to just 0 decimal place, so 86.79% becomes 87% 
		
			

 
Dim h1 as N
Dim oG2antt as P
Dim var_Bar as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Columns.Add("Tasks")
var_Column = oG2antt.Columns.Add("Effort")
	' var_Column.Def(18) = 21
	oG2antt.TemplateDef = "dim var_Column"
	oG2antt.TemplateDef = var_Column
	oG2antt.Template = "var_Column.Def(18) = 21"
	var_Column.Editor.EditType = 4
var_Chart = oG2antt.Chart
	var_Chart.LevelCount = 2
	var_Chart.NonworkingDays = 0
	' var_Chart.PaneWidth(.f.) = 96
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 96"
	var_Chart.FirstVisibleDate = {06/20/2005}
	var_Chart.HistogramVisible = .t.
	var_Chart.HistogramHeight = 128
	var_Chart.HistogramView = 112
	var_Bar = var_Chart.Bars.Item("Task")
		var_Bar.HistogramPattern = var_Bar.Pattern
		var_Bar.HistogramType = 0
		var_Bar.HistogramCriticalValue = 3
		var_Bar.ShowHistogramValues = "value>3?255:1"
		var_Bar.HistogramItems = -11
		var_Bar.HistogramGridLinesColor = 12632256
		var_Bar.HistogramRulerLinesColor = 65536
		var_Bar.FormatHistogramValues = "(value format `0`) + ` units`"
var_Items = oG2antt.Items
	var_Items.AllowCellValueToItemBar = .t.
	h1 = var_Items.AddItem("Task 1")
	var_Items.AddBar(h1,"Task",{06/21/2005},{06/23/2005})
	' var_Items.CellValue(h1,1) = 6.79
	oG2antt.TemplateDef = "dim var_Items,h1"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h1
	oG2antt.Template = "var_Items.CellValue(h1,1) = 6.79"
	h1 = var_Items.AddItem("Task 2")
	var_Items.AddBar(h1,"Task",{06/24/2005},{06/26/2005})
	' var_Items.CellValue(h1,1) = 3.19
	oG2antt.TemplateDef = "dim var_Items,h1"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h1
	oG2antt.Template = "var_Items.CellValue(h1,1) = 3.19"
	h1 = var_Items.AddItem("Task 3")
	var_Items.AddBar(h1,"Task",{06/27/2005},{06/29/2005})
	' var_Items.CellValue(h1,1) = 2
	oG2antt.TemplateDef = "dim var_Items,h1"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h1
	oG2antt.Template = "var_Items.CellValue(h1,1) = 2"
	h1 = var_Items.AddItem("Task 4")
	var_Items.AddBar(h1,"Task",{06/30/2005},{07/02/2005})
	' var_Items.CellValue(h1,1) = 1
	oG2antt.TemplateDef = "dim var_Items,h1"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h1
	oG2antt.Template = "var_Items.CellValue(h1,1) = 1"
oG2antt.EndUpdate()
 | 
  | 1734 |  How can I create a relative time-scale 
		
			

 
Dim h as N
Dim hChild as N
Dim oG2antt as P
Dim var_Bar as P
Dim var_Chart as P
Dim var_Chart1 as local
Dim var_Items as P
Dim var_Level as P
Dim var_Level1 as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.DefaultItemHeight = 24
oG2antt.HeaderHeight = oG2antt.DefaultItemHeight
oG2antt.GridLineStyle = 48
oG2antt.DrawGridLines = -1
oG2antt.LinesAtRoot = 0
oG2antt.BackColorLevelHeader = oG2antt.BackColor
var_Chart = oG2antt.Chart
	var_Chart.DrawGridLines = -1
	var_Chart.GridLineStyle = 48
	' var_Chart.PaneWidth(.f.) = 128
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 128"
	var_Chart.LevelCount = 2
	var_Chart.FirstVisibleDate = 0
	var_Chart.NonworkingDays = 0
	var_Chart.UnitWidth = 36
	var_Level = var_Chart.Level(0)
		var_Level.Unit = 4096
		var_Level.Count = 6
		var_Level.Alignment = 1
		var_Level.Label = "<%i%>"
		var_Level.FormatLabel = "'<b>' + ( (value / 6)  array ('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec') ) + '-16'"
	var_Level1 = var_Chart.Level(1)
		var_Level1.Label = "<%i%>"
		var_Level1.FormatLabel = "1 + value mod 6 + ` `"
		var_Level1.Alignment = 2
	var_Chart.AdjustLevelsToBase = .t.
	' var_Chart.ScrollRange(0) = 0
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.ScrollRange(0) = 0"
	' var_Chart.ScrollRange(1) = 95
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.ScrollRange(1) = 95"
	var_Bar = var_Chart.Bars.Item("Task")
		var_Bar.Height = 15
		var_Bar.Color = 11851260
		var_Bar.Pattern = 1
		' var_Bar.Def(3) = "date blocking"
		oG2antt.TemplateDef = "dim var_Bar"
		oG2antt.TemplateDef = var_Bar
		oG2antt.Template = "var_Bar.Def(3) = `date blocking`"
oG2antt.Columns.Add("Company")
var_Items = oG2antt.Items
	h = var_Items.AddItem("ABC Company")
	' var_Items.ItemBackColor(h) = 15790320
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBackColor(h) = 15790320"
	' oG2antt.Chart.ItemBackColor(h) = 15790320
	var_Chart1 = oG2antt.Chart
	oG2antt.TemplateDef = "dim var_Chart1"
	oG2antt.TemplateDef = var_Chart1
	oG2antt.Template = "Me.Chart.ItemBackColor(h) = 15790320"
	hChild = var_Items.InsertItem(h,,"line 1")
	var_Items.AddBar(hChild,"Task",0,3)
	hChild = var_Items.InsertItem(h,,"line 2")
	var_Items.AddBar(hChild,"Task",3,5,"A")
	var_Items.AddBar(hChild,"Task",7,10,"B")
	hChild = var_Items.InsertItem(h,,"line 3")
	var_Items.AddBar(hChild,"Task",5,8,"A")
	var_Items.AddBar(hChild,"Task",9,12,"B")
	' var_Items.ExpandItem(h) = .t.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ExpandItem(h) = True"
oG2antt.EndUpdate()
 | 
  | 1733 |  Extending the bar's visual appearance with additional objects, EBNs, using the exBarBackgroundExt and exBarBackgroundExtInflate 
		
			

 
Dim h as N
Dim oG2antt as P
Dim var_Appearance as P
Dim var_Bar as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.DefaultItemHeight = 32
var_Appearance = oG2antt.VisualAppearance
	var_Appearance.Add(1,"gBFLBCJwBAEHhEJAADhABcMIQAAYAQGKIYBkAKBQAGaAoDDUMQyQwAAyDAK8EwsACEIrAAJoaAAPoJRDGMTvfIgARIf6MIRAeCYFDAJQtDCMICwSKsXBaGwBJYGGaYEDGHQATxKM7wGBcEyLDSgXZDQRAAoqTI/SICEIlAZJRjoOo5DJGGQmChkQhNVzGQzQSJFDTNAaEAwidDJCoOGgkBw7NwXFaNZznBK7LpvK5HNrie55XzAcj3dbmAYJQzBJLxKSIDwCd6NXrCOJ5HhWDzjQjJMozLC8YiPG6fZRbeT4ToGNdXYhJWiyLiFeYtVzSMj1fD9Ir/EakbLtey4Lq2A53RzdHThSQpCwPA4BgIA=")
	var_Appearance.Add(2,"gBFLBCJwBAEHhEJAADhABcMIQAAYAQGKIYBkAKBQAGaAoDDUMQyQwAAyDAK8EwsACEIrAAJoaAAPoJRDGMTvfIgARIf6MIRAeCYFDAJQtDCMICwSKsXBaGwBJYGGaYEDGHQATxKM7wGBcEyLDSgXZDQRAAoqTI/SICEIlAZJRjoOo5DJGGQmChkQhNVzGQzQSJFDTNAaEAwidDJCoOGgkBw7NrXHZ9YwTOC5IDke67cr2J53XZAd4QTb2Cz7QC8QAvDA7awafM1MSuHIcOw/AqTYDkTq4XjODYhTDEc4zPLcFx/I6haBoWCSLi+T5VVrRMo1TKtRxnNaubZqO5aRrGe5NW6EXThSQpCr+f4BgIA=")
	var_Appearance.Add(3,"gBFLBCJwBAEHhEJAADhABcMIQAAYAQGKIYBkAKBQAGaAoDDUMQyQwAAyDAK8EwsACEIrAAJoaAAPoJRDGMTvfIgARIf6MIRAeCYFDAJQtDCMICwSKsXBaGwBJYGGaYEDGHQATxKM7wGBcEyLDSgXZDQRAAoqTI/SICEIlAZJRjoOo5DJGGQmChkQhNVzGQzQSJFDTNAaEAwidDJCoOGgkBw7NwXFaNZznBK7LpvK5HNrie55XxfV6YBa8B4JPaEZLwLB7dwaf6IQLiWLYHiAAYZRKTcxlDI8AwvFaaZjnWA5ZaOMZBU7RNRyHR9IyTDaWaTqeqbHIuJ4FUzaNY2fZrOz2F6FAA6cKSFIWFYVAMBA")
	var_Appearance.Add(4,"gBFLBCJwBAEHhEJAADhABb8IQAAYAQGKIYBkAKBQAGaAoDDUMQyQwAAyDAK8EwsACEIrAAJoaAAPoJRDGMTvfIgARIf6MIRAeCYFDAJQtDCMICwSKsXBaGwBJYGGaYEDGHQATxKM7wGBcEyLDSgXZDQRAAoqTI/SICEIlAZJRjoOo5DJGGQmChkQhNVzGQzQSJFDTNAaEAwidDJCoOGgkBw7NwXFaNZznBK7LpvK5HNrie55XxfV6YBa8B4JPaEZLwLB7dwaf6IQLiWLYHiAAYBIbJI5yeb5Hx3HqfZjbeSxVoML43SzHcByGRcTwzC6pYjrGoZJpWZ4ZQrbNR3DZ8VzzNTrQxIUhYVhUAkB")
	var_Appearance.RenderType = -16777216
var_Chart = oG2antt.Chart
	' var_Chart.PaneWidth(.f.) = 164
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 164"
	var_Chart.FirstVisibleDate = {01/01/2001}
	var_Chart.NonworkingDaysColor = 15790320
	var_Chart.NonworkingDaysPattern = 6
	var_Bar = var_Chart.Bars.Item("Task")
		var_Bar.Height = 17
		var_Bar.Color = 16777215
		var_Bar.Pattern = 1
		' var_Bar.Def(51) = 1
		oG2antt.TemplateDef = "dim var_Bar"
		oG2antt.TemplateDef = var_Bar
		oG2antt.Template = "var_Bar.Def(51) = 1"
oG2antt.Columns.Add("Column")
var_Items = oG2antt.Items
	var_Items.AddBar(var_Items.AddItem("Task"),"Task",{01/02/2001},{01/06/2001},"")
	h = var_Items.AddItem("Task+Rhombus(red)")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/07/2001},"")
	' var_Items.ItemBar(h,"",53) = "none[(100%-11,50%-6,11,11),back=0x10000FF]"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,53) = `none[(100%-11,50%-6,11,11),back=0x10000FF]`"
	' var_Items.ItemBar(h,"",55) = ",,5"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,55) = `,,5`"
	h = var_Items.AddItem("Rhombus(red)+Task")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/08/2001},"")
	' var_Items.ItemBar(h,"",53) = "none[(0,50%-6,11,11),back=0x10000FF]"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,53) = `none[(0,50%-6,11,11),back=0x10000FF]`"
	' var_Items.ItemBar(h,"",55) = "-5"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,55) = `-5`"
	h = var_Items.AddItem("Task(yellow)+Rhombus(blue)")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/09/2001},"")
	' var_Items.ItemBar(h,"",53) = "none[(100%-11,50%-6,11,11),back=0x1FF0000]"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,53) = `none[(100%-11,50%-6,11,11),back=0x1FF0000]`"
	' var_Items.ItemBar(h,"",55) = ",,5"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,55) = `,,5`"
	' var_Items.ItemBar(h,"",33) = 65535
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,33) = 65535"
	h = var_Items.AddItem("Rhombus(blue)+Task(yellow)")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/08/2001},"")
	' var_Items.ItemBar(h,"",53) = "none[(0,50%-6,11,11),back=0x1FF0000]"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,53) = `none[(0,50%-6,11,11),back=0x1FF0000]`"
	' var_Items.ItemBar(h,"",55) = "-5"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,55) = `-5`"
	' var_Items.ItemBar(h,"",33) = 65535
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,33) = 65535"
	h = var_Items.AddItem("TriangleUp(white)+Task")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/07/2001},"")
	' var_Items.ItemBar(h,"",53) = "none[(0,50%-6,11,11),back=0x2FFFFFF]"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,53) = `none[(0,50%-6,11,11),back=0x2FFFFFF]`"
	' var_Items.ItemBar(h,"",55) = "-5"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,55) = `-5`"
	h = var_Items.AddItem("TriangleUp(blue)+Task(magenta)+TriangleDown(red)")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/06/2001},"")
	' var_Items.ItemBar(h,"",53) = "none[(0,50%-6,11,11),back=0x02FF0000],none[(100%-11,50%-6,11,11),back=0x030000FF]"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,53) = `none[(0,50%-6,11,11),back=0x02FF0000],none[(100%-11,50%-6,11,11),back=0x030000FF]`"
	' var_Items.ItemBar(h,"",55) = "-5,0,5,0"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,55) = `-5,0,5,0`"
	' var_Items.ItemBar(h,"",33) = 16744703
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,33) = 16744703"
	h = var_Items.AddItem("Rhombus+Task+TriangleDown")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/07/2001},"")
	' var_Items.ItemBar(h,"",53) = "none[(0,50%-6,11,11),back=0x01FF0000],none[(100%-11,50%-6,11,11),back=0x030000FF]"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,53) = `none[(0,50%-6,11,11),back=0x01FF0000],none[(100%-11,50%-6,11,11),back=0x030000FF]`"
	' var_Items.ItemBar(h,"",55) = "-5, 0,5,0"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,55) = `-5, 0,5,0`"
	' var_Items.ItemBar(h,"",33) = 16744448
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,33) = 16744448"
	h = var_Items.AddItem("Rhombus+Task+TriangleDown")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/08/2001},"")
	' var_Items.ItemBar(h,"",53) = "none[(50%-6,0,11,11),back=0x01FF0000],none[(50%-6,100%-11,11,11),back=0x010000FF]"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,53) = `none[(50%-6,0,11,11),back=0x01FF0000],none[(50%-6,100%-11,11,11),back=0x010000FF]`"
	' var_Items.ItemBar(h,"",55) = "0,-5,0,5"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,55) = `0,-5,0,5`"
	h = var_Items.AddItem("Task+Star")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/09/2001},"")
	' var_Items.ItemBar(h,"",53) = "none[(100%-11,0,11,11),back=0x4FFFFFF]"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,53) = `none[(100%-11,0,11,11),back=0x4FFFFFF]`"
	' var_Items.ItemBar(h,"",55) = 5
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,55) = 5"
	h = var_Items.AddItem("Star+Task")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/08/2001},"")
	' var_Items.ItemBar(h,"",53) = "none[(0,100%-11,11,11),back=0x04FFFFFF]"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,53) = `none[(0,100%-11,11,11),back=0x04FFFFFF]`"
	' var_Items.ItemBar(h,"",55) = 5
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,55) = 5"
	h = var_Items.AddItem("Task+Star")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/07/2001},"")
	' var_Items.ItemBar(h,"",53) = "none[(100%-11,0,11,11),back=0x4FFFFFF]"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,53) = `none[(100%-11,0,11,11),back=0x4FFFFFF]`"
	' var_Items.ItemBar(h,"",55) = "0,-6,14"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,55) = `0,-6,14`"
oG2antt.EndUpdate()
 | 
  | 1732 |  I am using the ItemBar(exBarFrameColor) to display an additional EBN on the current bar. The problem is that I still need a black frame around the bar. How can I achieve that 
		
			

 
Dim h as N
Dim oG2antt as P
Dim var_Appearance as P
Dim var_Bar as local
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
var_Appearance = oG2antt.VisualAppearance
	var_Appearance.Add(1,"gBFLBCJwBAEHhEJAADhABXMIQAAYAQGKIYBkAKBQAGaAoDDWDoMAANAyjPBMKgBBCLAACaKQAD6CYQRhFT7yGAERr/C6EQLhGBRQCULQxDCBMIjLJoWhsASVRhnCBBRhwAI7ShPUBgXBNCQzICTJJkSJZBiECIJFAaJhnIapZDKGKQWCjAgiNpqGQ2QiKFC2HAcEAxCxGJBoKKZGq2bpJQLbdxUXRVZzpNi7Louay5CrOCZvXxaeAXDa+Az5ODDMRwLBcKhzCKDYzfdrZFaWFT3Qi8aCvG6sbw/HZ0OrEEIwCEBA")
	var_Appearance.Add(2,"CP:1 0 0 5 0")
	var_Appearance.Add(3,"gBFLBCJwBAEHhEJAADhABUEIQAAYAQGKIYBkAKBQAGaAoDDWDoMAANAyjPBMKgBBCLIxhEYobgmGIaRiBMIxAKIZhzEgYRoiAYhXDiHwxARHUgRfIEOwHDiBZomWKZEiaKIqRrLMryFLMZx3CqcAApGaqHiOCYlSbTcoyfJYZBzD6mKJpWipWheW48U7PVRDJSkNysASZIyrGKqJouX4WR7BcZgNR4YBgEoWRouSBLWrgNIVR6/eBABZFPzbNK3ZzdOIIJgEgIA=")
	var_Appearance.RenderType = -16777216
var_Chart = oG2antt.Chart
	' var_Chart.PaneWidth(.f.) = 164
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 164"
	var_Chart.FirstVisibleDate = {01/01/2001}
	var_Chart.Bars.Item("Task").Color = 67043328
	' var_Chart.Bars.Copy("Task","NewTask").Height = 15
	var_Bar = var_Chart.Bars.Copy("Task","NewTask")
	oG2antt.TemplateDef = "dim var_Bar"
	oG2antt.TemplateDef = var_Bar
	oG2antt.Template = "var_Bar.Height = 15"
oG2antt.Columns.Add("Column")
var_Items = oG2antt.Items
	h = var_Items.AddItem("Task")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/06/2001})
	var_Items.AddBar(h,"NewTask",{01/08/2001},{01/12/2001},"new")
	h = var_Items.AddItem("Task+Rhombus")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/06/2001})
	' var_Items.ItemBar(h,"",51) = 33554432
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,51) = 33554432"
	var_Items.AddBar(h,"NewTask",{01/08/2001},{01/12/2001},"new")
	' var_Items.ItemBar(h,"new",51) = 33554432
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`new`,51) = 33554432"
	h = var_Items.AddItem("Task/Color+Rhombus")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/06/2001})
	' var_Items.ItemBar(h,"",51) = 33554687
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,51) = 33554687"
	' var_Items.ItemBar(h,"",33) = 65280
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,33) = 65280"
	var_Items.AddBar(h,"NewTask",{01/08/2001},{01/12/2001},"new")
	' var_Items.ItemBar(h,"new",51) = 33554687
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`new`,51) = 33554687"
	' var_Items.ItemBar(h,"new",33) = 65280
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`new`,33) = 65280"
	h = var_Items.AddItem("Task/Color+Rhombus/Color")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/06/2001})
	' var_Items.ItemBar(h,"",51) = 33619712
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,51) = 33619712"
	' var_Items.ItemBar(h,"",33) = 16711935
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,33) = 16711935"
	var_Items.AddBar(h,"NewTask",{01/08/2001},{01/12/2001},"new")
	' var_Items.ItemBar(h,"new",51) = 33619712
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`new`,51) = 33619712"
	' var_Items.ItemBar(h,"new",33) = 16711935
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,`new`,33) = 16711935"
oG2antt.EndUpdate()
 | 
  | 1731 |  I am using EBN objects to show my bars, but when apply a color to the EBN looks darker. Is it possible to get the same color brightness 
		
			

 
Dim h as N
Dim oG2antt as P
Dim var_Appearance as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
var_Appearance = oG2antt.VisualAppearance
	var_Appearance.Add(1,"gBFLBCJwBAEHhEJAADhABWkIQAAYAQGKIYBkAKBQAGaAoDDWDoMAANAyjPBMKgBBCLAACaKQAD6CYQRhFT7yGAERr/C6EZBGABYJDUMAlCyNQBQSKIYxnAgYY4ACZ5IjqAwLQjQEYzZI0SxJCqQZBBCCSQKkYx0HScRijDILBQwIQmaqjEZoJCiQZfQLCAYRMhkQx9DKTLRtKhYDqubpHUZbdwWRaVYTlM6RLbhGy7YqefJtXLfN4WZgWCz9QLDI4wS78JruaqOW5hVz4BasfTrOzLcTzG4HLhCCYBgI")
	var_Appearance.Add(2,"CP:1 -6 0 0 0")
	var_Appearance.RenderType = -16777216
var_Chart = oG2antt.Chart
	' var_Chart.PaneWidth(.f.) = 164
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 164"
	var_Chart.FirstVisibleDate = {01/01/2001}
oG2antt.Columns.Add("Column")
var_Items = oG2antt.Items
	h = var_Items.AddItem("Task")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/06/2001})
	h = var_Items.AddItem("Task+Rhombus")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/06/2001})
	' var_Items.ItemBar(h,"",51) = 33554432
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,51) = 33554432"
	h = var_Items.AddItem("Task/Color+Rhombus")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/06/2001})
	' var_Items.ItemBar(h,"",51) = 33554687
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,51) = 33554687"
	' var_Items.ItemBar(h,"",33) = 65280
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,33) = 65280"
	h = var_Items.AddItem("Task/Color+Rhombus/Color")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/06/2001})
	' var_Items.ItemBar(h,"",51) = 33619712
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,51) = 33619712"
	' var_Items.ItemBar(h,"",33) = 16711935
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,33) = 16711935"
oG2antt.EndUpdate()
 | 
  | 1730 |  The ItemBar(exBarColor) changes the color for margins, and there is no exBarStartColor/exBarEndColor. However in my case I would then like do dynamically change the bar color to a different color without changing the start shape color 
		
			

 
Dim h as N
Dim oG2antt as P
Dim var_Appearance as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
var_Appearance = oG2antt.VisualAppearance
	var_Appearance.Add(1,"gBFLBCJwBAEHhEJAADhABWkIQAAYAQGKIYBkAKBQAGaAoDDWDoMAANAyjPBMKgBBCLAACaKQAD6CYQRhFT7yGAERr/C6EZBGABYJDUMAlCyNQBQSKIYxnAgYY4ACZ5IjqAwLQjQEYzZI0SxJCqQZBBCCSQKkYx0HScRijDILBQwIQmaqjEZoJCiQZfQLCAYRMhkQx9DKTLRtKhYDqubpHUZbdwWRaVYTlM6RLbhGy7YqefJtXLfN4WZgWCz9QLDI4wS78JruaqOW5hVz4BasfTrOzLcTzG4HLhCCYBgI")
	var_Appearance.Add(2,"CP:1 -6 0 0 0")
var_Chart = oG2antt.Chart
	' var_Chart.PaneWidth(.f.) = 164
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 164"
	var_Chart.FirstVisibleDate = {01/01/2001}
oG2antt.Columns.Add("Column")
var_Items = oG2antt.Items
	h = var_Items.AddItem("Task")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/06/2001})
	h = var_Items.AddItem("Task+Rhombus")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/06/2001})
	' var_Items.ItemBar(h,"",51) = 33554432
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,51) = 33554432"
	h = var_Items.AddItem("Task/Color+Rhombus")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/06/2001})
	' var_Items.ItemBar(h,"",51) = 33554432
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,51) = 33554432"
	' var_Items.ItemBar(h,"",33) = 65280
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,33) = 65280"
	h = var_Items.AddItem("Task/Color+Rhombus/Color")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/06/2001})
	' var_Items.ItemBar(h,"",51) = 33619712
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,51) = 33619712"
	' var_Items.ItemBar(h,"",33) = 16711935
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,33) = 16711935"
oG2antt.EndUpdate()
 | 
  | 1729 |  The ItemBar(exBarColor) changes the color for margins, and there is no exBarStartColor/exBarEndColor. However in my case I would then like do dynamically change the bar color to a different color without changing the end shape color 
		
			

 
Dim h as N
Dim oG2antt as P
Dim var_Appearance as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
var_Appearance = oG2antt.VisualAppearance
	var_Appearance.Add(1,"gBFLBCJwBAEHhEJAADhABXMIQAAYAQGKIYBkAKBQAGaAoDDWDoMAANAyjPBMKgBBCLAACaKQAD6CYQRhFT7yGAERr/C6EQLhGBRQCULQxDCBMIjLJoWhsASVRhnCBBRhwAI7ShPUBgXBNCQzICTJJkSJZBiECIJFAaJhnIapZDKGKQWCjAgiNpqGQ2QiKFC2HAcEAxCxGJBoKKZGq2bpJQLbdxUXRVZzpNi7Louay5CrOCZvXxaeAXDa+Az5ODDMRwLBcKhzCKDYzfdrZFaWFT3Qi8aCvG6sbw/HZ0OrEEIwCEBA")
	var_Appearance.Add(2,"CP:1 0 0 6 0")
var_Chart = oG2antt.Chart
	' var_Chart.PaneWidth(.f.) = 164
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 164"
	var_Chart.FirstVisibleDate = {01/01/2001}
oG2antt.Columns.Add("Column")
var_Items = oG2antt.Items
	h = var_Items.AddItem("Task")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/06/2001})
	h = var_Items.AddItem("Task+Rhombus")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/06/2001})
	' var_Items.ItemBar(h,"",51) = 33554432
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,51) = 33554432"
	h = var_Items.AddItem("Task/Color+Rhombus")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/06/2001})
	' var_Items.ItemBar(h,"",51) = 33554432
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,51) = 33554432"
	' var_Items.ItemBar(h,"",33) = 65280
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,33) = 65280"
	h = var_Items.AddItem("Task/Color+Rhombus/Color")
	var_Items.AddBar(h,"Task",{01/02/2001},{01/06/2001})
	' var_Items.ItemBar(h,"",51) = 33619712
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,51) = 33619712"
	' var_Items.ItemBar(h,"",33) = 16711935
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBar(h,``,33) = 16711935"
oG2antt.EndUpdate()
 | 
  | 1728 |  Is it possible to resize a column with the mouse without changing the width of the next column 
		
			

 
Dim oG2antt as P
Dim var_Column as local
Dim var_Column1 as local
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.ColumnAutoResize = .f.
' oG2antt.Columns.Add("Column 1").Width = 256
var_Column = oG2antt.Columns.Add("Column 1")
oG2antt.TemplateDef = "dim var_Column"
oG2antt.TemplateDef = var_Column
oG2antt.Template = "var_Column.Width = 256"
' oG2antt.Columns.Add("Column 2").Width = 512
var_Column1 = oG2antt.Columns.Add("Column 2")
oG2antt.TemplateDef = "dim var_Column1"
oG2antt.TemplateDef = var_Column1
oG2antt.Template = "var_Column1.Width = 512"
oG2antt.DrawGridLines = -1
oG2antt.EndUpdate()
 | 
  | 1727 |  How can I align captions of items with checkbox, with items with no checkbox 
		
			

 
Dim oG2antt as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Columns.Add("Default")
var_Items = oG2antt.Items
	' var_Items.CellImages(var_Items.AddItem(0),0) = "1"
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.CellImages(AddItem(0),0) = `1`"
	' var_Items.CellHasCheckBox(var_Items.AddItem(1),0) = .t.
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.CellHasCheckBox(AddItem(1),0) = True"
	' var_Items.CellImages(var_Items.AddItem(2),0) = "1"
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.CellImages(AddItem(2),0) = `1`"
oG2antt.EndUpdate()
 | 
  | 1726 |  How can I show each group header ( not-subroup ), with a different background color, while alternate background colors for inside items 
		
			

 
' Occurs after a new Group Item has been inserted to Items collection.
function AddGroupItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM)
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		var_Items.AddBar(Item,"Summary",var_Items.CellValue(Item,2),var_Items.CellValue(Item,4))
		var_Items.DefineSummaryBars(Item,"",-3,"")
end function
' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM)
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		var_Items.AddBar(Item,"Task",var_Items.CellValue(Item,2),var_Items.CellValue(Item,4))
end function
' Occurs when column's position or column's size is changed.
function LayoutChanged as v ()
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	oG2antt.Refresh()
end function
Dim oG2antt as P
Dim rs as P
Dim var_Chart as local
Dim var_Column as P
Dim var_Column1 as P
Dim var_Columns as local
Dim var_Columns1 as local
Dim var_ConditionalFormat as local
Dim var_ConditionalFormat1 as local
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Chart.FirstVisibleDate = {09/01/1994}
' oG2antt.Chart.PaneWidth(.f.) = 312
var_Chart = oG2antt.Chart
oG2antt.TemplateDef = "dim var_Chart"
oG2antt.TemplateDef = var_Chart
oG2antt.Template = "var_Chart.PaneWidth(False) = 312"
oG2antt.BackColorSortBar = oG2antt.BackColor
oG2antt.ColumnAutoResize = .f.
rs = OLE.Create("ADOR.Recordset")
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3)
oG2antt.DataSource = rs
oG2antt.Items.AllowCellValueToItemBar = .t.
' oG2antt.Columns.Item(2).Def(18) = 1
var_Columns = oG2antt.Columns.Item(2)
oG2antt.TemplateDef = "dim var_Columns"
oG2antt.TemplateDef = var_Columns
oG2antt.Template = "var_Columns.Def(18) = 1"
' oG2antt.Columns.Item(4).Def(18) = 2
var_Columns1 = oG2antt.Columns.Item(4)
oG2antt.TemplateDef = "dim var_Columns1"
oG2antt.TemplateDef = var_Columns1
oG2antt.Template = "var_Columns1.Def(18) = 2"
oG2antt.SortBarVisible = .t.
oG2antt.SortBarCaption = "Drag a <b>column</b> header here to group by that column."
oG2antt.AllowGroupBy = .t.
oG2antt.Columns.Item(1).SortOrder = 1
var_Column = oG2antt.Columns.Add("Position")
	var_Column.FormatColumn = "(0:= (1 rpos '')) right ( ( 1:= ( =:0 rfind `.` ) ) != -1 ? =:1 : len(=:0))"
	var_Column.Visible = .f.
var_Column1 = oG2antt.Columns.Add("Position")
	var_Column1.FormatColumn = "(1 rpos '') contains '.'"
	var_Column1.Visible = .f.
' oG2antt.ConditionalFormats.Add("(%C13 mod 2) != 0").BackColor = 15790320
var_ConditionalFormat = oG2antt.ConditionalFormats.Add("(%C13 mod 2) != 0")
oG2antt.TemplateDef = "dim var_ConditionalFormat"
oG2antt.TemplateDef = var_ConditionalFormat
oG2antt.Template = "var_ConditionalFormat.BackColor = 15790320"
' oG2antt.ConditionalFormats.Add("%C14 = 0").BackColor = 12500670
var_ConditionalFormat1 = oG2antt.ConditionalFormats.Add("%C14 = 0")
oG2antt.TemplateDef = "dim var_ConditionalFormat1"
oG2antt.TemplateDef = var_ConditionalFormat1
oG2antt.Template = "var_ConditionalFormat1.BackColor = 12500670"
oG2antt.EndUpdate()
 | 
  | 1725 |  What is the difference between %0 and %C0, when using in expressions ( format, conditional format, computed fields, and so on ) 
		
			

 
Dim oG2antt as P
Dim var_Chart as local
Dim var_Column as local
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_Editor as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
' oG2antt.Chart.PaneWidth(.t.) = 0
var_Chart = oG2antt.Chart
oG2antt.TemplateDef = "dim var_Chart"
oG2antt.TemplateDef = var_Chart
oG2antt.Template = "var_Chart.PaneWidth(True) = 0"
oG2antt.HeaderAppearance = 4
oG2antt.HeaderHeight = 24
oG2antt.ScrollBySingleLine = .t.
oG2antt.DrawGridLines = -2
' oG2antt.Columns.Add("Value").Def(17) = 1
var_Column = oG2antt.Columns.Add("Value")
oG2antt.TemplateDef = "dim var_Column"
oG2antt.TemplateDef = var_Column
oG2antt.Template = "var_Column.Def(17) = 1"
var_Column1 = oG2antt.Columns.Add("FormatColumn = `%0` ~ CellValue")
	var_Column1.FormatColumn = "%0"
	' var_Column1.Def(16) = .f.
	oG2antt.TemplateDef = "dim var_Column1"
	oG2antt.TemplateDef = var_Column1
	oG2antt.Template = "var_Column1.Def(16) = False"
var_Column2 = oG2antt.Columns.Add("FormatColumn = `%C0`~ CellCaption")
	var_Column2.FormatColumn = "%C0"
	' var_Column2.Def(16) = .f.
	oG2antt.TemplateDef = "dim var_Column2"
	oG2antt.TemplateDef = var_Column2
	oG2antt.Template = "var_Column2.Def(16) = False"
var_Items = oG2antt.Items
	var_Items.AddItem(1.1234)
	' var_Items.CellValueFormat(var_Items.AddItem("<sha ;;0>This <fgcolor=FF0000>is a <s><b>HTM</fgcolor>L</b> text</s>."),0) = 1
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.CellValueFormat(AddItem(`<sha ;;0>This <fgcolor=FF0000>is a <s><b>HTM</fgcolor>L</b> text</s>.`),0) = 1"
	var_Editor = var_Items.CellEditor(var_Items.AddItem(3))
		var_Editor.EditType = 6
		var_Editor.AddItem(1,"Border")
		var_Editor.AddItem(2,"Thick")
		var_Editor.AddItem(4,"Shadow")
	' var_Items.FormatCell(var_Items.AddItem(10000),0) = "`<b>` + currency(value)"
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.FormatCell(AddItem(10000),0) = ```<b>`` + currency(value)`"
oG2antt.EndUpdate()
 | 
  | 1724 |  How can I alternate colors for each group header ( not-subroup ), with a different background color, while items of the same group showing with a different color 
		
			

 
' Occurs after a new Group Item has been inserted to Items collection.
function AddGroupItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM)
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		var_Items.AddBar(Item,"Summary",var_Items.CellValue(Item,2),var_Items.CellValue(Item,4))
		var_Items.DefineSummaryBars(Item,"",-3,"")
end function
' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM)
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		var_Items.AddBar(Item,"Task",var_Items.CellValue(Item,2),var_Items.CellValue(Item,4))
end function
' Occurs when column's position or column's size is changed.
function LayoutChanged as v ()
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	oG2antt.Refresh()
end function
Dim oG2antt as P
Dim rs as P
Dim var_Chart as local
Dim var_Column as P
Dim var_Column1 as P
Dim var_Columns as local
Dim var_Columns1 as local
Dim var_ConditionalFormat as local
Dim var_ConditionalFormat1 as local
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Chart.FirstVisibleDate = {09/01/1994}
' oG2antt.Chart.PaneWidth(.f.) = 312
var_Chart = oG2antt.Chart
oG2antt.TemplateDef = "dim var_Chart"
oG2antt.TemplateDef = var_Chart
oG2antt.Template = "var_Chart.PaneWidth(False) = 312"
oG2antt.BackColorSortBar = oG2antt.BackColor
oG2antt.ColumnAutoResize = .f.
rs = OLE.Create("ADOR.Recordset")
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3)
oG2antt.DataSource = rs
oG2antt.Items.AllowCellValueToItemBar = .t.
' oG2antt.Columns.Item(2).Def(18) = 1
var_Columns = oG2antt.Columns.Item(2)
oG2antt.TemplateDef = "dim var_Columns"
oG2antt.TemplateDef = var_Columns
oG2antt.Template = "var_Columns.Def(18) = 1"
' oG2antt.Columns.Item(4).Def(18) = 2
var_Columns1 = oG2antt.Columns.Item(4)
oG2antt.TemplateDef = "dim var_Columns1"
oG2antt.TemplateDef = var_Columns1
oG2antt.Template = "var_Columns1.Def(18) = 2"
oG2antt.SortBarVisible = .t.
oG2antt.SortBarCaption = "Drag a <b>column</b> header here to group by that column."
oG2antt.AllowGroupBy = .t.
oG2antt.Columns.Item(1).SortOrder = 1
var_Column = oG2antt.Columns.Add("Position")
	var_Column.FormatColumn = "(0:= (1 rpos '')) left ( ( 1:= ( =:0 lfind `.` ) ) != -1 ? =:1 : len(=:0))"
	var_Column.Visible = .f.
var_Column1 = oG2antt.Columns.Add("Position")
	var_Column1.FormatColumn = "(1 rpos '') contains '.'"
	var_Column1.Visible = .f.
' oG2antt.ConditionalFormats.Add("(%C13 mod 2) != 0").BackColor = 15790320
var_ConditionalFormat = oG2antt.ConditionalFormats.Add("(%C13 mod 2) != 0")
oG2antt.TemplateDef = "dim var_ConditionalFormat"
oG2antt.TemplateDef = var_ConditionalFormat
oG2antt.Template = "var_ConditionalFormat.BackColor = 15790320"
' oG2antt.ConditionalFormats.Add("%C14 = 0").BackColor = 12500670
var_ConditionalFormat1 = oG2antt.ConditionalFormats.Add("%C14 = 0")
oG2antt.TemplateDef = "dim var_ConditionalFormat1"
oG2antt.TemplateDef = var_ConditionalFormat1
oG2antt.Template = "var_ConditionalFormat1.BackColor = 12500670"
oG2antt.EndUpdate()
 | 
  | 1723 |  How can I highlight each group header, with a different background color (method 2) 
		
			

 
' Occurs after a new Group Item has been inserted to Items collection.
function AddGroupItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM)
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		' var_Items.ItemBackColor(Item) = 12500670
		oG2antt.TemplateDef = "dim var_Items,Item"
		oG2antt.TemplateDef = var_Items
		oG2antt.TemplateDef = Item
		oG2antt.Template = "var_Items.ItemBackColor(Item) = 12500670"
		var_Items.AddBar(Item,"Summary",var_Items.CellValue(Item,2),var_Items.CellValue(Item,4))
		var_Items.DefineSummaryBars(Item,"",-3,"")
end function
' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM)
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		var_Items.AddBar(Item,"Task",var_Items.CellValue(Item,2),var_Items.CellValue(Item,4))
end function
' Occurs when column's position or column's size is changed.
function LayoutChanged as v ()
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	oG2antt.Refresh()
end function
Dim oG2antt as P
Dim rs as P
Dim var_Chart as local
Dim var_Columns as local
Dim var_Columns1 as local
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Chart.FirstVisibleDate = {09/01/1994}
' oG2antt.Chart.PaneWidth(.f.) = 312
var_Chart = oG2antt.Chart
oG2antt.TemplateDef = "dim var_Chart"
oG2antt.TemplateDef = var_Chart
oG2antt.Template = "var_Chart.PaneWidth(False) = 312"
oG2antt.BackColorSortBar = oG2antt.BackColor
oG2antt.ColumnAutoResize = .f.
rs = OLE.Create("ADOR.Recordset")
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3)
oG2antt.DataSource = rs
oG2antt.Items.AllowCellValueToItemBar = .t.
' oG2antt.Columns.Item(2).Def(18) = 1
var_Columns = oG2antt.Columns.Item(2)
oG2antt.TemplateDef = "dim var_Columns"
oG2antt.TemplateDef = var_Columns
oG2antt.Template = "var_Columns.Def(18) = 1"
' oG2antt.Columns.Item(4).Def(18) = 2
var_Columns1 = oG2antt.Columns.Item(4)
oG2antt.TemplateDef = "dim var_Columns1"
oG2antt.TemplateDef = var_Columns1
oG2antt.Template = "var_Columns1.Def(18) = 2"
oG2antt.SortBarVisible = .t.
oG2antt.SortBarCaption = "Drag a <b>column</b> header here to group by that column."
oG2antt.AllowGroupBy = .t.
oG2antt.Columns.Item(1).SortOrder = 1
oG2antt.EndUpdate()
 | 
  | 1722 |  How can I highlight each group header ( not-subroup ), with a different background color (method 1) 
		
			

 
' Occurs after a new Group Item has been inserted to Items collection.
function AddGroupItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM)
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		var_Items.AddBar(Item,"Summary",var_Items.CellValue(Item,2),var_Items.CellValue(Item,4))
		var_Items.DefineSummaryBars(Item,"",-3,"")
end function
' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM)
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		var_Items.AddBar(Item,"Task",var_Items.CellValue(Item,2),var_Items.CellValue(Item,4))
end function
' Occurs when column's position or column's size is changed.
function LayoutChanged as v ()
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	oG2antt.Refresh()
end function
Dim oG2antt as P
Dim rs as P
Dim var_Chart as local
Dim var_Column as P
Dim var_Column1 as P
Dim var_Columns as local
Dim var_Columns1 as local
Dim var_ConditionalFormat as local
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Chart.FirstVisibleDate = {09/01/1994}
' oG2antt.Chart.PaneWidth(.f.) = 312
var_Chart = oG2antt.Chart
oG2antt.TemplateDef = "dim var_Chart"
oG2antt.TemplateDef = var_Chart
oG2antt.Template = "var_Chart.PaneWidth(False) = 312"
oG2antt.BackColorSortBar = oG2antt.BackColor
oG2antt.ColumnAutoResize = .f.
rs = OLE.Create("ADOR.Recordset")
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3)
oG2antt.DataSource = rs
oG2antt.Items.AllowCellValueToItemBar = .t.
' oG2antt.Columns.Item(2).Def(18) = 1
var_Columns = oG2antt.Columns.Item(2)
oG2antt.TemplateDef = "dim var_Columns"
oG2antt.TemplateDef = var_Columns
oG2antt.Template = "var_Columns.Def(18) = 1"
' oG2antt.Columns.Item(4).Def(18) = 2
var_Columns1 = oG2antt.Columns.Item(4)
oG2antt.TemplateDef = "dim var_Columns1"
oG2antt.TemplateDef = var_Columns1
oG2antt.Template = "var_Columns1.Def(18) = 2"
oG2antt.SortBarVisible = .t.
oG2antt.SortBarCaption = "Drag a <b>column</b> header here to group by that column."
oG2antt.AllowGroupBy = .t.
oG2antt.Columns.Item(1).SortOrder = 1
var_Column = oG2antt.Columns.Add("Position")
	var_Column.FormatColumn = "(0:= (1 rpos '')) left ( ( 1:= ( =:0 lfind `.` ) ) != -1 ? =:1 : len(=:0))"
	var_Column.Visible = .f.
var_Column1 = oG2antt.Columns.Add("Position")
	var_Column1.FormatColumn = "(1 rpos '') contains '.'"
	var_Column1.Visible = .f.
' oG2antt.ConditionalFormats.Add("%C14 = 0").BackColor = 12500670
var_ConditionalFormat = oG2antt.ConditionalFormats.Add("%C14 = 0")
oG2antt.TemplateDef = "dim var_ConditionalFormat"
oG2antt.TemplateDef = var_ConditionalFormat
oG2antt.Template = "var_ConditionalFormat.BackColor = 12500670"
oG2antt.EndUpdate()
 | 
  | 1721 |  The BackColorAlternate displays each second row with a different background color. Is it possible to apply a different background color, for each sub-tree, ConditionalFormats, Add 
		
			

 
' Occurs when column's position or column's size is changed.
function LayoutChanged as v ()
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	oG2antt.Refresh()
end function
' Fired when the control sorts a column.
function Sort as v ()
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	oG2antt.Refresh()
end function
Dim h as N
Dim oG2antt as P
Dim var_Chart as local
Dim var_Column as P
Dim var_Column1 as P
Dim var_Column2 as P
Dim var_ConditionalFormat as local
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.LinesAtRoot = -1
var_Column = oG2antt.Columns.Add("P1")
	' var_Column.Def(0) = .t.
	oG2antt.TemplateDef = "dim var_Column"
	oG2antt.TemplateDef = var_Column
	oG2antt.Template = "var_Column.Def(0) = True"
	var_Column.PartialCheck = .t.
' oG2antt.Chart.PaneWidth(.t.) = 0
var_Chart = oG2antt.Chart
oG2antt.TemplateDef = "dim var_Chart"
oG2antt.TemplateDef = var_Chart
oG2antt.Template = "var_Chart.PaneWidth(True) = 0"
var_Column1 = oG2antt.Columns.Add("P2")
	' var_Column1.Def(0) = .t.
	oG2antt.TemplateDef = "dim var_Column1"
	oG2antt.TemplateDef = var_Column1
	oG2antt.Template = "var_Column1.Def(0) = True"
	var_Column1.PartialCheck = .t.
var_Items = oG2antt.Items
	h = var_Items.AddItem("Root 1")
	var_Items.InsertItem(h,,"Child 1")
	var_Items.InsertItem(h,,"Child 2")
	' var_Items.ExpandItem(h) = .t.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ExpandItem(h) = True"
	h = var_Items.AddItem("Root 2")
	var_Items.InsertItem(h,,"Child 1")
	var_Items.InsertItem(h,,"Child 2")
	' var_Items.ExpandItem(h) = .t.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ExpandItem(h) = True"
	h = var_Items.AddItem("Root 2")
	var_Items.InsertItem(h,,"Child 1")
	var_Items.InsertItem(h,,"Child 2")
	' var_Items.ExpandItem(h) = .t.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ExpandItem(h) = True"
var_Column2 = oG2antt.Columns.Add("Position")
	var_Column2.FormatColumn = "(0:= (1 rpos '')) left ( ( 1:= ( =:0 lfind `.` ) ) != -1 ? =:1 : len(=:0))"
	var_Column2.Visible = .f.
' oG2antt.ConditionalFormats.Add("(%C2 mod 2) != 0").BackColor = 15790320
var_ConditionalFormat = oG2antt.ConditionalFormats.Add("(%C2 mod 2) != 0")
oG2antt.TemplateDef = "dim var_ConditionalFormat"
oG2antt.TemplateDef = var_ConditionalFormat
oG2antt.Template = "var_ConditionalFormat.BackColor = 15790320"
oG2antt.EndUpdate()
 | 
  | 1720 |  The BackColorAlternate displays each second row with a different background color. Is it possible to apply a different background color, for 2nd, 3rd, 4th, row, and so on 
		
			

 
' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM)
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		var_Items.AddBar(Item,"Task",var_Items.CellValue(Item,2),var_Items.CellValue(Item,4))
end function
' Occurs when column's position or column's size is changed.
function LayoutChanged as v ()
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	oG2antt.Refresh()
end function
Dim oG2antt as P
Dim rs as P
Dim var_Chart as local
Dim var_Column as P
Dim var_Columns as local
Dim var_Columns1 as local
Dim var_ConditionalFormat as local
Dim var_ConditionalFormat1 as local
Dim var_ConditionalFormat2 as local
Dim var_ConditionalFormat3 as local
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Chart.FirstVisibleDate = {09/01/1994}
' oG2antt.Chart.PaneWidth(.f.) = 312
var_Chart = oG2antt.Chart
oG2antt.TemplateDef = "dim var_Chart"
oG2antt.TemplateDef = var_Chart
oG2antt.Template = "var_Chart.PaneWidth(False) = 312"
oG2antt.ColumnAutoResize = .f.
rs = OLE.Create("ADOR.Recordset")
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3)
oG2antt.DataSource = rs
oG2antt.Items.AllowCellValueToItemBar = .t.
' oG2antt.Columns.Item(2).Def(18) = 1
var_Columns = oG2antt.Columns.Item(2)
oG2antt.TemplateDef = "dim var_Columns"
oG2antt.TemplateDef = var_Columns
oG2antt.Template = "var_Columns.Def(18) = 1"
' oG2antt.Columns.Item(4).Def(18) = 2
var_Columns1 = oG2antt.Columns.Item(4)
oG2antt.TemplateDef = "dim var_Columns1"
oG2antt.TemplateDef = var_Columns1
oG2antt.Template = "var_Columns1.Def(18) = 2"
oG2antt.Columns.Item(1).SortOrder = 1
var_Column = oG2antt.Columns.Add("Position")
	var_Column.FormatColumn = "1 apos ''"
	var_Column.Visible = .f.
' oG2antt.ConditionalFormats.Add("(%C13 mod 5) = 1").BackColor = 8421504
var_ConditionalFormat = oG2antt.ConditionalFormats.Add("(%C13 mod 5) = 1")
oG2antt.TemplateDef = "dim var_ConditionalFormat"
oG2antt.TemplateDef = var_ConditionalFormat
oG2antt.Template = "var_ConditionalFormat.BackColor = 8421504"
' oG2antt.ConditionalFormats.Add("(%C13 mod 5) = 2").BackColor = 10790052
var_ConditionalFormat1 = oG2antt.ConditionalFormats.Add("(%C13 mod 5) = 2")
oG2antt.TemplateDef = "dim var_ConditionalFormat1"
oG2antt.TemplateDef = var_ConditionalFormat1
oG2antt.Template = "var_ConditionalFormat1.BackColor = 10790052"
' oG2antt.ConditionalFormats.Add("(%C13 mod 5) = 3").BackColor = 12500670
var_ConditionalFormat2 = oG2antt.ConditionalFormats.Add("(%C13 mod 5) = 3")
oG2antt.TemplateDef = "dim var_ConditionalFormat2"
oG2antt.TemplateDef = var_ConditionalFormat2
oG2antt.Template = "var_ConditionalFormat2.BackColor = 12500670"
' oG2antt.ConditionalFormats.Add("(%C13 mod 5) = 4").BackColor = 15790320
var_ConditionalFormat3 = oG2antt.ConditionalFormats.Add("(%C13 mod 5) = 4")
oG2antt.TemplateDef = "dim var_ConditionalFormat3"
oG2antt.TemplateDef = var_ConditionalFormat3
oG2antt.Template = "var_ConditionalFormat3.BackColor = 15790320"
oG2antt.EndUpdate()
 | 
  | 1719 |  The BackColorAlternate displays each second row with a different background color. The question I have it is possible to apply a different background color for 3rd, 4th, row, and so on 
		
			

 
' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM)
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		var_Items.AddBar(Item,"Task",var_Items.CellValue(Item,2),var_Items.CellValue(Item,4))
end function
' Occurs when column's position or column's size is changed.
function LayoutChanged as v ()
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	oG2antt.Refresh()
end function
Dim oG2antt as P
Dim rs as P
Dim var_Chart as local
Dim var_Column as P
Dim var_Columns as local
Dim var_Columns1 as local
Dim var_ConditionalFormat as local
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Chart.FirstVisibleDate = {09/01/1994}
' oG2antt.Chart.PaneWidth(.f.) = 312
var_Chart = oG2antt.Chart
oG2antt.TemplateDef = "dim var_Chart"
oG2antt.TemplateDef = var_Chart
oG2antt.Template = "var_Chart.PaneWidth(False) = 312"
oG2antt.ColumnAutoResize = .f.
rs = OLE.Create("ADOR.Recordset")
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3)
oG2antt.DataSource = rs
oG2antt.Items.AllowCellValueToItemBar = .t.
' oG2antt.Columns.Item(2).Def(18) = 1
var_Columns = oG2antt.Columns.Item(2)
oG2antt.TemplateDef = "dim var_Columns"
oG2antt.TemplateDef = var_Columns
oG2antt.Template = "var_Columns.Def(18) = 1"
' oG2antt.Columns.Item(4).Def(18) = 2
var_Columns1 = oG2antt.Columns.Item(4)
oG2antt.TemplateDef = "dim var_Columns1"
oG2antt.TemplateDef = var_Columns1
oG2antt.Template = "var_Columns1.Def(18) = 2"
oG2antt.Columns.Item(1).SortOrder = 1
var_Column = oG2antt.Columns.Add("Position")
	var_Column.FormatColumn = "1 apos ''"
	var_Column.Visible = .f.
' oG2antt.ConditionalFormats.Add("(%C13 mod 4) = 0").BackColor = 15790320
var_ConditionalFormat = oG2antt.ConditionalFormats.Add("(%C13 mod 4) = 0")
oG2antt.TemplateDef = "dim var_ConditionalFormat"
oG2antt.TemplateDef = var_ConditionalFormat
oG2antt.Template = "var_ConditionalFormat.BackColor = 15790320"
oG2antt.EndUpdate()
 | 
  | 1718 |  The BackColorAlternate looks fine for flat tables, but how about using it when displaying a hierarchy/tree, like grouping rows. The sample alternate colors for each group found 
		
			

 
' Occurs after a new Group Item has been inserted to Items collection.
function AddGroupItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM)
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		var_Items.AddBar(Item,"Summary",var_Items.CellValue(Item,2),var_Items.CellValue(Item,4))
		var_Items.DefineSummaryBars(Item,"",-3,"")
end function
' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM)
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		var_Items.AddBar(Item,"Task",var_Items.CellValue(Item,2),var_Items.CellValue(Item,4))
end function
' Occurs when column's position or column's size is changed.
function LayoutChanged as v ()
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	oG2antt.Refresh()
end function
Dim oG2antt as P
Dim rs as P
Dim var_Chart as local
Dim var_Column as P
Dim var_Columns as local
Dim var_Columns1 as local
Dim var_ConditionalFormat as local
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Chart.FirstVisibleDate = {09/01/1994}
' oG2antt.Chart.PaneWidth(.f.) = 312
var_Chart = oG2antt.Chart
oG2antt.TemplateDef = "dim var_Chart"
oG2antt.TemplateDef = var_Chart
oG2antt.Template = "var_Chart.PaneWidth(False) = 312"
oG2antt.BackColorSortBar = oG2antt.BackColor
oG2antt.ColumnAutoResize = .f.
rs = OLE.Create("ADOR.Recordset")
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3)
oG2antt.DataSource = rs
oG2antt.Items.AllowCellValueToItemBar = .t.
' oG2antt.Columns.Item(2).Def(18) = 1
var_Columns = oG2antt.Columns.Item(2)
oG2antt.TemplateDef = "dim var_Columns"
oG2antt.TemplateDef = var_Columns
oG2antt.Template = "var_Columns.Def(18) = 1"
' oG2antt.Columns.Item(4).Def(18) = 2
var_Columns1 = oG2antt.Columns.Item(4)
oG2antt.TemplateDef = "dim var_Columns1"
oG2antt.TemplateDef = var_Columns1
oG2antt.Template = "var_Columns1.Def(18) = 2"
oG2antt.SortBarVisible = .t.
oG2antt.SortBarCaption = "Drag a <b>column</b> header here to group by that column."
oG2antt.AllowGroupBy = .t.
oG2antt.Columns.Item(1).SortOrder = 1
var_Column = oG2antt.Columns.Add("Position")
	var_Column.FormatColumn = "(0:= (1 rpos '')) left ( ( 1:= ( =:0 lfind `.` ) ) != -1 ? =:1 : len(=:0))"
	var_Column.Visible = .f.
' oG2antt.ConditionalFormats.Add("(%C13 mod 2) != 0").BackColor = 15790320
var_ConditionalFormat = oG2antt.ConditionalFormats.Add("(%C13 mod 2) != 0")
oG2antt.TemplateDef = "dim var_ConditionalFormat"
oG2antt.TemplateDef = var_ConditionalFormat
oG2antt.Template = "var_ConditionalFormat.BackColor = 15790320"
oG2antt.EndUpdate()
 | 
  | 1717 |  How do I show the chart's labels in 24-hour clock format 
		
			

 
Dim oG2antt as P
Dim var_Chart as P
Dim var_Level as P
Dim var_Level1 as P
Dim var_Level2 as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
var_Chart = oG2antt.Chart
	' var_Chart.PaneWidth(.f.) = 0
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 0"
	var_Chart.FirstVisibleDate = {01/01/2001}
	var_Chart.LevelCount = 3
	var_Level = var_Chart.Level(0)
		var_Level.Label = "<%mmm%> <%d%>, <%yyyy%>"
		var_Level.Alignment = 17 'exHOutside + CenterAlignment
		var_Level.Unit = 4096
	var_Level1 = var_Chart.Level(1)
		var_Level1.Label = "<b><%h%>:00</b>"
		var_Level1.Alignment = 1
		var_Level1.Unit = 65536
		var_Level1.DrawTickLines = .t.
		var_Level1.DrawGridLines = .t.
	var_Level2 = var_Chart.Level(2)
		var_Level2.Label = "<%nn%>"
		var_Level2.Unit = 1048576
		var_Level2.Count = 15
	var_Chart.ScrollTo({01/01/2001 08:30:00},0)
 | 
  | 1716 |  How do I show the chart's labels in 12-hour clock format 
		
			

 
Dim oG2antt as P
Dim var_Chart as P
Dim var_Level as P
Dim var_Level1 as P
Dim var_Level2 as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
var_Chart = oG2antt.Chart
	' var_Chart.PaneWidth(.f.) = 0
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 0"
	var_Chart.FirstVisibleDate = {01/01/2001}
	var_Chart.LevelCount = 3
	var_Level = var_Chart.Level(0)
		var_Level.Label = "<%mmm%> <%d%>, <%yyyy%>"
		var_Level.Alignment = 17 'exHOutside + CenterAlignment
		var_Level.Unit = 4096
	var_Level1 = var_Chart.Level(1)
		var_Level1.Label = "<b><%h%>:00</b> <%AM/PM%>"
		var_Level1.Alignment = 1
		var_Level1.Unit = 65536
		var_Level1.DrawTickLines = .t.
		var_Level1.DrawGridLines = .t.
	var_Level2 = var_Chart.Level(2)
		var_Level2.Label = "<%nn%>"
		var_Level2.Unit = 1048576
		var_Level2.Count = 15
	var_Chart.ScrollTo({01/01/2001 08:30:00},0)
 | 
  | 1715 |  I would like to avoid manual typing in the date-cell because user often type wrong things (no decimal points and so on) and so the todays-date is generated for the cell. What can be done 
		
			

 
' Occurs when the user presses and releases an ANSI key.
function KeyPress as v (KeyAscii  as  N)
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	? "if .Editying != 0 then" 
	? oG2antt.Editing 
	KeyAscii = 0
end function
Dim oG2antt as P
Dim var_Chart as P
Dim var_Column as P
Dim var_Column1 as P
Dim var_Columns as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
var_Columns = oG2antt.Columns
	var_Columns.Add("Tasks")
	var_Column = var_Columns.Add("Start")
		' var_Column.Def(18) = 1
		oG2antt.TemplateDef = "dim var_Column"
		oG2antt.TemplateDef = var_Column
		oG2antt.Template = "var_Column.Def(18) = 1"
		var_Column.Editor.EditType = 7
	var_Column1 = var_Columns.Add("End")
		' var_Column1.Def(18) = 2
		oG2antt.TemplateDef = "dim var_Column1"
		oG2antt.TemplateDef = var_Column1
		oG2antt.Template = "var_Column1.Def(18) = 2"
		var_Column1.Editor.EditType = 7
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {09/20/2006}
	var_Chart.AllowLinkBars = .t.
	var_Chart.AllowCreateBar = 0
	var_Chart.LevelCount = 2
	' var_Chart.PaneWidth(.f.) = 196
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(0) = 196"
var_Items = oG2antt.Items
	var_Items.AllowCellValueToItemBar = .t.
	var_Items.AddBar(var_Items.AddItem("Task 1"),"Task",{09/21/2006},{09/24/2006})
	var_Items.AddBar(var_Items.AddItem("Task 2"),"Task",{09/22/2006},{09/25/2006})
	var_Items.AddBar(var_Items.AddItem("Task 3"),"Task",{09/23/2006},{09/26/2006})
oG2antt.EndUpdate()
 | 
  | 1714 |  When a Day, Week etc is clicked how can we make it centre/zoom the chart to cover all the bars 
		
			

 
' Occurs once the user selects a new time scale unit in the overview zoom area.
function OverviewZoom as v ()
	Dim var_Chart as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Chart = oG2antt.Chart
		var_Chart.ScrollTo({01/01/2001},1)
		? "Start" 
		? var_Chart.StartPrintDate 
		? "End" 
		? var_Chart.EndPrintDate 
end function
Dim oG2antt as P
Dim var_Chart as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
var_Chart = oG2antt.Chart
	' var_Chart.PaneWidth(.f.) = 128
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 128"
	var_Chart.LevelCount = 2
	var_Chart.OverviewVisible = 2
	var_Chart.AllowOverviewZoom = 1
	' var_Chart.Label(16777216) = ""
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.Label(16777216) = ``"
	' var_Chart.Label(1048576) = ""
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.Label(1048576) = ``"
	' var_Chart.Label(65536) = ""
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.Label(65536) = ``"
	var_Chart.UnitScale = 4096
	var_Chart.ScrollTo({01/01/2001},1)
	var_Chart.MarkTimeZone("zone",{01/01/2001},{01/02/2001},10516548)
oG2antt.Columns.Add("Default")
var_Items = oG2antt.Items
	var_Items.AddBar(var_Items.AddItem("Item 1"),"Task",{12/15/2000},{01/10/2001})
	var_Items.AddBar(var_Items.AddItem("Item 2"),"Task",{01/01/2001},{01/05/2001})
oG2antt.EndUpdate()
 | 
  | 1713 |  The first time we run the application, the day label headers looks different then pressing Week and then Day again on the control's overview part. How do we make to show the header in the same format 
		
			

 
Dim oG2antt as P
Dim var_Chart as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
var_Chart = oG2antt.Chart
	' var_Chart.PaneWidth(.f.) = 128
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 128"
	var_Chart.LevelCount = 2
	var_Chart.OverviewVisible = 2
	var_Chart.AllowOverviewZoom = 1
	' var_Chart.Label(16777216) = ""
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.Label(16777216) = ``"
	' var_Chart.Label(1048576) = ""
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.Label(1048576) = ``"
	' var_Chart.Label(65536) = ""
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.Label(65536) = ``"
	var_Chart.UnitScale = 4096
 | 
  | 1712 |  How to sort numerically by columns 
		
			

 
Dim oG2antt as P
Dim var_Column as local
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
' oG2antt.Columns.Add("Numeric").SortType = 1
var_Column = oG2antt.Columns.Add("Numeric")
oG2antt.TemplateDef = "dim var_Column"
oG2antt.TemplateDef = var_Column
oG2antt.Template = "var_Column.SortType = 1"
var_Items = oG2antt.Items
	var_Items.AddItem(1)
	var_Items.AddItem(2)
	var_Items.AddItem(12)
	var_Items.AddItem(22)
oG2antt.Columns.Item(0).SortOrder = 1
oG2antt.EndUpdate()
 | 
  | 1711 |  The control does not ensure the item to fit the control's client area once the user clicks the cell's button or check box. What can be done 
		
			
' Occurs when the user presses a mouse button.
function MouseDown as v (Button  as  N, Shift  as  N, X  as  OLE::Exontrol.G2antt.1::OLE_XPOS_PIXELS, Y  as  OLE::Exontrol.G2antt.1::OLE_YPOS_PIXELS)
	' Items.EnsureVisibleItem(ItemFromPoint(-1,-1,c,hit))
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
end function
Dim oG2antt as P
Dim var_Column as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.TreeColumnIndex = -1
oG2antt.SelForeColor = oG2antt.ForeColor
var_Column = oG2antt.Columns.Add("Buttons")
	var_Column.Alignment = 1
	' var_Column.Def(2) = .t.
	oG2antt.TemplateDef = "dim var_Column"
	oG2antt.TemplateDef = var_Column
	oG2antt.Template = "var_Column.Def(2) = True"
var_Items = oG2antt.Items
	var_Items.AddItem("Button A")
	var_Items.AddItem("Button B")
	var_Items.AddItem("Button C")
oG2antt.EndUpdate()
 | 
  | 1710 |  How do I arrange the levels when the user changes the scale using the control's overview part 
		
			

 
' Occurs once the user selects a new time scale unit in the overview zoom area.
function OverviewZoom as v ()
	Dim var_Chart as P
	Dim var_Level as local
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	? oG2antt.Chart.UnitScale 
	oG2antt.EnsureVisibleColumn(0)
	var_Chart = oG2antt.Chart
		' var_Chart.Level(0).DrawTickLines = 0
		var_Level = var_Chart.Level(0)
		oG2antt.TemplateDef = "dim var_Level"
		oG2antt.TemplateDef = var_Level
		oG2antt.Template = "var_Level.DrawTickLines = 0"
		var_Chart.ScrollTo({11/18/2015},1)
end function
Dim oG2antt as P
Dim var_Chart as P
Dim var_Level as P
Dim var_Level1 as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {11/18/2015}
	' var_Chart.PaneWidth(.f.) = 0
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(False) = 0"
	var_Chart.LevelCount = 2
	var_Chart.DrawLevelSeparator = 2
	var_Level = var_Chart.Level(0)
		var_Level.Alignment = 17 'exHOutside + CenterAlignment
		var_Level.DrawTickLines = 2
		var_Level.BackColor = oG2antt.BackColor
	var_Level1 = var_Chart.Level(1)
		var_Level1.DrawTickLines = 65 'exLevelMiddleLine + exLevelDotLine
		var_Level1.DrawTickLinesFrom(0,2)
	var_Chart.OverviewVisible = 2
	var_Chart.AllowOverviewZoom = 1
	var_Chart.UnitWidth = 24
	' var_Chart.Label(16777216) = ""
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.Label(16777216) = ``"
	' var_Chart.Label(1048576) = ""
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.Label(1048576) = ``"
	' var_Chart.Label(65536) = ""
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.Label(65536) = ``"
	' var_Chart.Label(256) = ""
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.Label(256) = ``"
	' var_Chart.Label(4096) = "<|><%d%><|><%d3%>, <%m3%> <%d%>, '<%yy%><|><%dddd%>, <%mmmm%> <%d%>, <%yyyy%><||><||>4096"
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.Label(4096) = `<|><%d%><|><%d3%>, <%m3%> <%d%>, '<%yy%><|><%dddd%>, <%mmmm%> <%d%>, <%yyyy%><||><||>4096`"
	var_Chart.UnitScale = 4096
	var_Chart.ScrollTo(var_Chart.FirstVisibleDate,1)
oG2antt.Columns.Add("Default")
oG2antt.EndUpdate()
 | 
  | 1709 |  I am using AllowGroupBy, the question is it is possible to add summary bars for child item, when user do grouping 
		
			

 
' Occurs after a new Group Item has been inserted to Items collection.
function AddGroupItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM)
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		var_Items.AddBar(Item,"Summary",var_Items.CellValue(Item,2),var_Items.CellValue(Item,4))
		var_Items.DefineSummaryBars(Item,"",-3,"")
end function
' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM)
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		var_Items.AddBar(Item,"Task",var_Items.CellValue(Item,2),var_Items.CellValue(Item,4))
end function
Dim oG2antt as P
Dim rs as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Chart.FirstVisibleDate = {09/01/1994}
oG2antt.BackColorSortBar = oG2antt.BackColor
oG2antt.ColumnAutoResize = .f.
rs = OLE.Create("ADOR.Recordset")
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3)
oG2antt.DataSource = rs
oG2antt.SortBarVisible = .t.
oG2antt.SortBarCaption = "Drag a <b>column</b> header here to group by that column."
oG2antt.AllowGroupBy = .t.
oG2antt.Columns.Item(1).SortOrder = 1
oG2antt.EndUpdate()
 | 
  | 1708 |  I noticed that when grouping on a field, its details are always expanded. Is it possible to show collapsed by default (method 3) 
		
			

 
' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM)
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		var_Items.AddBar(Item,"Task",var_Items.CellValue(Item,2),var_Items.CellValue(Item,4))
end function
Dim oG2antt as P
Dim rs as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Chart.FirstVisibleDate = {09/01/1994}
oG2antt.BackColorSortBar = oG2antt.BackColor
oG2antt.ColumnAutoResize = .f.
rs = OLE.Create("ADOR.Recordset")
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3)
oG2antt.DataSource = rs
oG2antt.SortBarVisible = .t.
oG2antt.SortBarCaption = "Drag a <b>column</b> header here to group by that column."
oG2antt.AllowGroupBy = .t.
oG2antt.Chart.ShowCollapsedBars = .t.
oG2antt.EndUpdate()
oG2antt.Layout = "multiplesort=\"C1:1\";collapse=\"0-9999\""
 | 
  | 1707 |  I noticed that when grouping on a field, its details are always expanded. Is it possible to show collapsed by default (method 2) 
		
			

 
' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM)
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		var_Items.AddBar(Item,"Task",var_Items.CellValue(Item,2),var_Items.CellValue(Item,4))
end function
Dim oG2antt as P
Dim rs as P
Dim var_Items as local
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Chart.FirstVisibleDate = {09/01/1994}
oG2antt.BackColorSortBar = oG2antt.BackColor
oG2antt.ColumnAutoResize = .f.
rs = OLE.Create("ADOR.Recordset")
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3)
oG2antt.DataSource = rs
oG2antt.SortBarVisible = .t.
oG2antt.SortBarCaption = "Drag a <b>column</b> header here to group by that column."
oG2antt.AllowGroupBy = .t.
oG2antt.Columns.Item(1).SortOrder = 1
oG2antt.EndUpdate()
oG2antt.BeginUpdate()
oG2antt.EnsureVisibleColumn(0)
' oG2antt.Items.ExpandItem(0) = .f.
var_Items = oG2antt.Items
oG2antt.TemplateDef = "dim var_Items"
oG2antt.TemplateDef = var_Items
oG2antt.Template = "var_Items.ExpandItem(0) = False"
oG2antt.EndUpdate()
 | 
  | 1706 |  I noticed that when grouping on a field, its details are always expanded. Is it possible to show collapsed by default (method 1) 
		
			

 
' Occurs after a new Group Item has been inserted to Items collection.
function AddGroupItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM)
	Dim var_Items as local
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	' oG2antt.Items.ExpandItem(Item) = .f.
	var_Items = oG2antt.Items
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.ExpandItem(Item) = False"
end function
' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM)
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		var_Items.AddBar(Item,"Task",var_Items.CellValue(Item,2),var_Items.CellValue(Item,4))
end function
Dim oG2antt as P
Dim rs as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Chart.FirstVisibleDate = {09/01/1994}
oG2antt.BackColorSortBar = oG2antt.BackColor
oG2antt.ColumnAutoResize = .f.
rs = OLE.Create("ADOR.Recordset")
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3)
oG2antt.DataSource = rs
oG2antt.SortBarVisible = .t.
oG2antt.SortBarCaption = "Drag a <b>column</b> header here to group by that column."
oG2antt.AllowGroupBy = .t.
oG2antt.Columns.Item(1).SortOrder = 1
oG2antt.EndUpdate()
 | 
  | 1705 |  Is there a possibility to expand / collapse all groups (or group by group) at runtime with a method (equivalent to pressing the + or - button in the group header) 
		
			

 
' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM)
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		var_Items.AddBar(Item,"Task",var_Items.CellValue(Item,2),var_Items.CellValue(Item,4))
end function
Dim oG2antt as P
Dim rs as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Chart.FirstVisibleDate = {09/01/1994}
oG2antt.BackColorSortBar = oG2antt.BackColor
oG2antt.ColumnAutoResize = .f.
rs = OLE.Create("ADOR.Recordset")
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3)
oG2antt.DataSource = rs
oG2antt.SortBarVisible = .t.
oG2antt.SortBarCaption = "Drag a <b>column</b> header here to group by that column."
oG2antt.AllowGroupBy = .t.
oG2antt.Columns.Item(1).SortOrder = 1
oG2antt.EndUpdate()
oG2antt.EnsureVisibleColumn(0)
oG2antt.BeginUpdate()
var_Items = oG2antt.Items
	' var_Items.ExpandItem(var_Items.RootItem(0)) = .f.
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.ExpandItem(RootItem(0)) = False"
	' var_Items.ExpandItem(var_Items.RootItem(1)) = .f.
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.ExpandItem(RootItem(1)) = False"
	' var_Items.ExpandItem(var_Items.RootItem(2)) = .f.
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.ExpandItem(RootItem(2)) = False"
oG2antt.EndUpdate()
 | 
  | 1704 |  Is there a possibility to expand / collapse all groups (or group by group) at runtime with a method (equivalent to pressing the + or - button in the group header) 
		
			

 
' Occurs after a new Item has been inserted to Items collection.
function AddItem as v (Item  as  OLE::Exontrol.G2antt.1::HITEM)
	Dim var_Items as P
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	var_Items = oG2antt.Items
		var_Items.AddBar(Item,"Task",var_Items.CellValue(Item,2),var_Items.CellValue(Item,4))
end function
Dim oG2antt as P
Dim rs as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.Chart.FirstVisibleDate = {09/01/1994}
oG2antt.BackColorSortBar = oG2antt.BackColor
oG2antt.ColumnAutoResize = .f.
rs = OLE.Create("ADOR.Recordset")
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3)
oG2antt.DataSource = rs
oG2antt.SortBarVisible = .t.
oG2antt.SortBarCaption = "Drag a <b>column</b> header here to group by that column."
oG2antt.AllowGroupBy = .t.
oG2antt.Columns.Item(1).SortOrder = 1
oG2antt.EndUpdate()
oG2antt.BeginUpdate()
oG2antt.EnsureVisibleColumn(0)
var_Items = oG2antt.Items
	' var_Items.ExpandItem(var_Items.FirstVisibleItem) = .f.
	oG2antt.TemplateDef = "dim var_Items"
	oG2antt.TemplateDef = var_Items
	oG2antt.Template = "var_Items.ExpandItem(FirstVisibleItem) = False"
oG2antt.EndUpdate()
 | 
  | 1703 |  How can I move automatically a bar once another is moved ( non-working bars ) 
		
			

 
Dim h as N
Dim h1 as N
Dim h2 as N
Dim h3 as N
Dim oG2antt as P
Dim var_Bar as P
Dim var_Chart as P
Dim var_Column as local
Dim var_Column1 as local
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.MarkSearchColumn = .f.
oG2antt.OnResizeControl = 1
oG2antt.Columns.Add("Tasks")
' oG2antt.Columns.Add("Start").Visible = .f.
var_Column = oG2antt.Columns.Add("Start")
oG2antt.TemplateDef = "dim var_Column"
oG2antt.TemplateDef = var_Column
oG2antt.Template = "var_Column.Visible = False"
' oG2antt.Columns.Add("End").Visible = .f.
var_Column1 = oG2antt.Columns.Add("End")
oG2antt.TemplateDef = "dim var_Column1"
oG2antt.TemplateDef = var_Column1
oG2antt.Template = "var_Column1.Visible = False"
var_Chart = oG2antt.Chart
	var_Chart.FirstVisibleDate = {09/20/2006}
	' var_Chart.PaneWidth(.f.) = 64
	oG2antt.TemplateDef = "dim var_Chart"
	oG2antt.TemplateDef = var_Chart
	oG2antt.Template = "var_Chart.PaneWidth(0) = 64"
	var_Bar = var_Chart.Bars.Add("Task:Split")
		var_Bar.Shortcut = "TSplit"
		' var_Bar.Def(20) = .t.
		oG2antt.TemplateDef = "dim var_Bar"
		oG2antt.TemplateDef = var_Bar
		oG2antt.Template = "var_Bar.Def(20) = True"
var_Items = oG2antt.Items
	h = var_Items.AddItem("Project")
	' var_Items.CellValue(h,1) = {09/22/2006}
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,1) = #9/22/2006#"
	' var_Items.CellValue(h,2) = {10/03/2006}
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,2) = #10/3/2006#"
	var_Items.AddBar(h,"Summary",var_Items.CellValue(h,1),var_Items.CellValue(h,2))
	h1 = var_Items.InsertItem(h,,"Task 1")
	' var_Items.CellValue(h1,1) = var_Items.CellValue(h,1)
	oG2antt.TemplateDef = "dim var_Items,h1"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h1
	oG2antt.Template = "var_Items.CellValue(h1,1) = CellValue(h,1)"
	' var_Items.CellValue(h1,2) = {09/26/2006}
	oG2antt.TemplateDef = "dim var_Items,h1"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h1
	oG2antt.Template = "var_Items.CellValue(h1,2) = #9/26/2006#"
	var_Items.AddBar(h1,"TSplit",var_Items.CellValue(h1,1),var_Items.CellValue(h1,2))
	h2 = var_Items.InsertItem(h,,"Task 2")
	' var_Items.CellValue(h2,1) = var_Items.CellValue(h1,2)
	oG2antt.TemplateDef = "dim var_Items,h2"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h2
	oG2antt.Template = "var_Items.CellValue(h2,1) = CellValue(h1,2)"
	' var_Items.CellValue(h2,2) = {09/28/2006}
	oG2antt.TemplateDef = "dim var_Items,h2"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h2
	oG2antt.Template = "var_Items.CellValue(h2,2) = #9/28/2006#"
	var_Items.AddBar(h2,"TSplit",var_Items.CellValue(h2,1),var_Items.CellValue(h2,2))
	var_Items.AddLink("L1",h1,"",h2,"")
	h3 = var_Items.InsertItem(h,,"Task 3")
	' var_Items.CellValue(h3,1) = var_Items.CellValue(h2,2)
	oG2antt.TemplateDef = "dim var_Items,h3"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h3
	oG2antt.Template = "var_Items.CellValue(h3,1) = CellValue(h2,2)"
	' var_Items.CellValue(h3,2) = var_Items.CellValue(h,2)
	oG2antt.TemplateDef = "dim var_Items,h3"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h3
	oG2antt.Template = "var_Items.CellValue(h3,2) = CellValue(h,2)"
	var_Items.AddBar(h3,"TSplit",var_Items.CellValue(h3,1),var_Items.CellValue(h3,2))
	var_Items.AddLink("L2",h2,"",h3,"")
	var_Items.GroupBars(h1,"",.f.,h2,"",.t.,7)
	var_Items.GroupBars(h2,"",.f.,h3,"",.t.,7)
	var_Items.DefineSummaryBars(h,"",h1,"")
	var_Items.DefineSummaryBars(h,"",h2,"")
	var_Items.DefineSummaryBars(h,"",h3,"")
	' var_Items.ExpandItem(h) = .t.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ExpandItem(h) = True"
	' var_Items.ItemBold(h) = .t.
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.ItemBold(h) = True"
oG2antt.EndUpdate()
 | 
  | 1702 |  How can I get notified once the user expands a column 
		
			

 
' Occurs when column's position or column's size is changed.
function LayoutChanged as v ()
	oG2antt = topparent:CONTROL_ACTIVEX1.activex
	? "Column-Expanded" 
	? oG2antt.Columns.Item("C0").Expanded 
end function
Dim h as N
Dim oG2antt as P
Dim var_Column as P
Dim var_Columns as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.ShowFocusRect = .f.
oG2antt.ColumnAutoResize = .f.
oG2antt.DrawGridLines = -1
oG2antt.BackColorLevelHeader = oG2antt.BackColor
var_Columns = oG2antt.Columns
	var_Column = var_Columns.Add("C0")
		var_Column.ExpandColumns = "0,1,2"
		var_Column.DisplayExpandButton = .t.
	var_Columns.Add("C1")
	var_Columns.Add("C2")
var_Items = oG2antt.Items
	h = var_Items.AddItem("Cell 0.0")
	' var_Items.CellValue(h,1) = "Cell 0.1"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,1) = `Cell 0.1`"
	' var_Items.CellValue(h,2) = "Cell 0.2"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,2) = `Cell 0.2`"
	h = var_Items.AddItem("Cell 1.0")
	' var_Items.CellValue(h,1) = "Cell 1.1"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,1) = `Cell 1.1`"
	' var_Items.CellValue(h,2) = "Cell 1.2"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,2) = `Cell 1.2`"
oG2antt.EndUpdate()
 | 
  | 1701 |  I am using expandable headers, the question is how I can display the column itself, not just the child columns 
		
			

 
Dim h as N
Dim oG2antt as P
Dim var_Column as P
Dim var_Columns as P
Dim var_Items as P
oG2antt = topparent:CONTROL_ACTIVEX1.activex
oG2antt.BeginUpdate()
oG2antt.ColumnAutoResize = .f.
oG2antt.DrawGridLines = -1
oG2antt.BackColorLevelHeader = oG2antt.BackColor
var_Columns = oG2antt.Columns
	var_Column = var_Columns.Add("C0")
		var_Column.ExpandColumns = "0,1,2"
		var_Column.DisplayExpandButton = .t.
	var_Columns.Add("C1")
	var_Columns.Add("C2")
var_Items = oG2antt.Items
	h = var_Items.AddItem("Cell 0.0")
	' var_Items.CellValue(h,1) = "Cell 0.1"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,1) = `Cell 0.1`"
	' var_Items.CellValue(h,2) = "Cell 0.2"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,2) = `Cell 0.2`"
	h = var_Items.AddItem("Cell 1.0")
	' var_Items.CellValue(h,1) = "Cell 1.1"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,1) = `Cell 1.1`"
	' var_Items.CellValue(h,2) = "Cell 1.2"
	oG2antt.TemplateDef = "dim var_Items,h"
	oG2antt.TemplateDef = var_Items
	oG2antt.TemplateDef = h
	oG2antt.Template = "var_Items.CellValue(h,2) = `Cell 1.2`"
oG2antt.EndUpdate()
 |